UPC(Universal Product Code)バーコードは、北米(アメリカ、カナダ)で使用されている共通商品コードです。 種類としては、以下の通り3つのバージョンがあるようですが、ここでは、基本的な「Version A」とそれを短縮した「Version E」の2つを説明します。
Version A : 正規のバージョン
Version D : 12+n文字、または、可変長メッセージのバージョン
Version E : ゼロサプレスバージョン(ゼロの部分を除いて短くした)
一番幅の狭いバーとスペースが基本要素で、これを1モジュールと呼びます。バーとスペースの種類は、1〜4モジュールの4種類あります。
幅の違いは、基本要素の整数倍になっています。
1モジュールのスペースは、バイナリーコードの0(zero)を表し、1モジュールのバーは、バイナリーコードの1(one)を表します。
1文字は、2つのバーと2つのスペースで構成されており、バーとスペースのトータル幅は、7モジュールです。
4種類のスペース | 4種類のバー |
![]() | ![]() |
要するに、1文字は7ビットで表現されており、0と1をスペースとバーに置き換えればよいのです。
表現できる文字は、数字(0〜9)のみです。
例として、バイナリーコードで 「1110010 」と定義されている1文字のバーとスペースの組合せは以下のようになります。
1モジュールの基本寸法は13/1000インチ(0.33mm)で、0.8倍(10.4/1000インチ)まで縮小でき、そして、2.0倍(26/1000インチ)まで拡大できます。
SVG形式で作成されるバーコードは、基本寸法(0.33mm)になっています。(2015年8月22日追記)
バーとスペースの基本構成は以下の通りです。
Left Light Margin | + | Left Guard Bars | + | Number System Character | + | Left Data Field | + | Center Bars | + | Right Data Field | + | Check Digit | + | Right Guard Bars | + | Right Light Margin |
---|
Left Light Margin | : | 9モジュール以上のスペースが必要です。 |
Left Guard Bars | : | スタートコードを表し、「101 |