バーコード生成

Code128・EAN-13・UPC-Aバーコードを生成(SVG・PNG)

バーコードの種類

数字・英字・記号すべて使用可能(印刷可能ASCII)。物流・在庫管理でよく使われます。

デザイン

値を入力すると即座にバーコードが生成されます。

バーコード生成について

このツールは3種類の一次元バーコードを作ります。商品パッケージに印刷されるEAN-13(日本ではJANコードと呼ばれるものと同じ規格)、北米で使われるUPC-A、そして英数字や記号を自由に入れられるCode 128です。前の2つは「どの商品か」を表す番号体系と結びついており、Code 128は倉庫の棚番、伝票番号、社内の資産番号など形式の自由な値に使います。

レジで読み取られる商品ならGS1から付与された番号でEAN-13を作る必要があり、社内管理用のラベルならCode 128が向いています。

EAN-13(JAN)のチェックデジットを手で計算する

最後の1桁は前の12桁から計算する検査用の数字です。左から奇数番目の桁に1、偶数番目の桁に3を掛けて合計し、その合計を次の10の倍数にするのに必要な数がチェックデジットです。スキャナは読み取った13桁で同じ計算を行い、合わなければその読み取りを捨てます。1桁の読み違いはほぼこれで弾かれます。

12桁を入れるとチェックデジットを付け、13桁を入れて最後の桁が計算と違えばバーコードを作らず、入力値と計算値を並べて知らせます。このときは、チェックデジットよりも他の桁の入力ミスを疑ってください。最後の桁だけ計算値に直して印刷すると、元とは違う番号のバーコードになります。

45・49で始まれば日本製か

先頭の2〜3桁はGS1事業者コードの国コード部分で、番号を発行したGS1加盟機関を表します。450〜459と490〜499はGS1 Japan、880はGS1 Korea、840〜849はGS1 Spainです。978・979は書籍のISBN(Bookland)、977は定期刊行物のISSN、200〜299は店内で使うインストアコード用に予約されています。

よくある誤解ですが、これは原産国ではありません。日本企業が海外工場で作った商品にも45や49の番号が付き、GS1自身も国コードは製造国を示さないと説明しています。

このツールで任意の13桁を作ることはできますが、流通で使うにはGS1 Japanで事業者コードの登録を受ける必要があります。勝手な番号は他社の商品と重なるおそれがあります。

UPC-Aは先頭に0が隠れたEAN-13

12桁のUPC-Aは、前に0を付けるとそのままEAN-13になり、バーの模様も同じです。そのためEAN-13のスキャナはUPC-Aを問題なく読めます。チェックデジットも0を付けた13桁で計算し、このツールもそのとおりに処理します。11桁を入れれば12桁目を補います。

Code 128:数字が続くとバーが短くなる

Code 128は1つのシンボルが11モジュール幅で、3つのコードセットがあります。このツールは英数字・記号(ASCII 32〜126)を入れるセットBと、数字2桁を1シンボルに詰めるセットCを自動で切り替えます。数字が4桁以上続くとCに切り替えるので、長い数字の番号は同じ長さの英字に比べて幅がほぼ半分になります。

末尾にはモジュラス103のチェックシンボルが付きます。スタートシンボルの値に、各シンボルの値×位置を足して103で割った余りです。人が読む文字列には表示されませんが、スキャナはこれで誤読を弾きます。制御文字用のセットAは実装していないため、日本語や改行は入れられず、入力は80文字までです。

例

チェックデジットの検算

入力
先頭12桁 490123456789
結果
4901234567894

重み1・3を交互に掛けると 4+27+0+3+2+9+4+15+6+21+8+27 = 126。130まで4足りないのでチェックデジットは4です。

Code 128のセット切り替え

入力
ABC-1234567
結果
13シンボル+ストップ、計145モジュール(チェック値67)

ABC-はセットB、123456はセットCの3シンボル、余った7は再びセットBです。チェック値は 104+33×1+34×2+35×3+13×4+99×5+12×6+34×7+56×8+100×9+23×10 = 2745 を103で割った余り67です。

数字だけのときの幅

入力
12345678 / ABC-123(どちらもCode 128)
結果
79モジュール / 112モジュール

8桁の数字はセットCの4シンボルで収まるため、7文字の英字より細くなります。小さなラベルなら数字だけの番号が有利です。

UPC-A

入力
03600029145
結果
036000291452

0を前に付けた003600029145として計算したチェックデジット2が付きます。

使い方

  1. 形式を選びます。商品番号はEAN-13かUPC-A、それ以外はCode 128。
  2. 値を入力します。EAN-13は12桁、UPC-Aは11桁だけでもチェックデジットが付きます。
  3. バーの高さと余白を調整します。左右の余白はスキャナが開始位置を探すのに必要なので削らないでください。
  4. PNGかSVGで保存し、実際のスキャナやスマホアプリで読めるか確かめます。

よくある質問

作ったバーコードを販売する商品に使えますか?

バー自体は規格どおりに作られますが、流通で使うには番号がGS1 Japanで登録された事業者コードに基づいている必要があります。任意の番号は他の商品と重なる可能性があります。

日本語を入れるとエラーになります。

Code 128で扱えるのはASCIIの範囲だけです。日本語が必要ならUTF-8を扱えるQRコードを使ってください。

色を変えても大丈夫ですか?

多くのスキャナは赤い光でバーと背景の反射率の差を見ます。赤いバーは赤い光の下で背景と区別できず読めないことがあるので、暗いバーと明るい背景を保ってください。

13桁を入れたらバーコードが出ません。

最後の桁(チェックデジット)が前の12桁から計算した値と違うためです。ツールは勝手に直さず、両方の値を表示します。既存の商品から写した番号なら、他の桁を写し間違えていないか確認してください。前の桁が確かなら最後の桁を消すと自動計算されます。

出典

基準日:

プライバシーとデータの扱い