Hitachi

PRINT DATA EXCHANGE for Open


付録H.2 各バーコードの設計

ここでは,各バーコードの設計について説明します。

〈この項の構成〉

(1) CODE39

CODE39について説明します。

(a) 印刷領域の幅

CODE39のバーコードのサイズは,9.4CPI,5.5CPI,3.0CPIの3種類の中から,解像度に応じて印刷領域内に収まる最大のサイズが自動的に選択されます。各CPIのバーコードを出力するのに必要な印刷領域の幅を次の表に示します。表内の「n」は機能キャラクタデータ内の文字数を表します。

表H‒5  CODE39バーコードのサイズ

解像度※1

サイズ

バーコード幅

(dot)

左マージン

(dot)

右マージン

(dot)

印刷領域に必要な幅

dot

1/1,440インチ

180

9.4cpi

17n−2

9

9

17n+16

dot値×8

5.5cpi

32n−2

16

16

32n+30

3.0cpi

61n−4

28

28

61n+52

240

9.4cpi

27n−3

12

12

27n+21

dot値×6

5.5cpi

45n−3

21

21

45n+39

3.0cpi

80n−5

38

38

80n+71

300

9.4cpi

30n−3

14

14

30n+25

dot値×4.8※2

5.5cpi

51n−3

26

26

51n+49

3.0cpi

99n−6

47

47

99n+88

400

9.4cpi

43n−4

19

19

43n+34

dot値×3.6※2

5.5cpi

77n−5

35

35

77n+65

3.0cpi

131n−8

63

63

131n+118

480

9.4cpi

53n−5

23

23

53n+41

dot値×3

5.5cpi

93n−6

42

42

93n+78

3.0cpi

160n−10

76

76

160n+142

600

9.4cpi

67n−7

29

29

67n+51

dot値×2.4※2

5.5cpi

112n−7

52

52

112n+97

3.0cpi

205n−13

95

95

205n+177

1200

9.4cpi

127n−13

58

58

127n+103

dot値×1.2※2

5.5cpi

221n−14

104

104

221n+194

3.0cpi

403n−25

190

190

403n+355

注※1

環境設定ユティリティの[バーコード設定]タブ−[出力設定]−[解像度]の指定値(デフォルトは600)。

注※2

小数点以下は切り上げます。

なお,設定例や機能キャラクタへの設定方法は,「付録I.19(2)(a) CODE39」を参照してください。

(2) JAN(標準/短縮)

JANについて説明します。なお,次の用語は,JIS X 0501に基づいています。

(a) 印刷領域の幅

JANでは1モジュール幅の倍率(0.8〜2.0)と解像度(環境設定ユティリティの[バーコード設定]タブ−[出力設定]−[解像度]の指定値)を基準にしてバーコードの大きさが変化します。次の例では,0.8倍相当のJAN(標準/短縮)バーコードを解像度600dpiで出力する場合の値を記載しています。

  • JAN(標準)の場合

    モジュール幅のドット数

    =|(倍率×解像度×13)÷1,000|

    =│(0.8×600×13)│

    =6

    左マージンのドット数

    =モジュール幅のドット数×11

    =6×11

    =66

    右マージンのドット数

    =モジュール幅のドット数×7

    =6×7

    =42

    バーコード幅のドット数

    =モジュール幅のドット数×95

    =6×95

    =570

    バーコード印刷領域の幅に必要なドット数

    =バーコード幅のドット数+左右マージンのドット数

    =570+66+42

    =678

    機能キャラクタで指定する領域の幅(1/1,440インチ)

    =↑(バーコード印刷領域の幅に必要なドット数÷解像度)×1,440↑

    =↑(678÷600)×1,440↑

    =1,628

  • JAN(短縮)の場合

    モジュール幅のドット数

    =|(倍率×解像度×13)÷1,000|

    =│(0.8×600×13)│

    =6

    左マージンのドット数

    =右マージンのドット数

    =モジュール幅のドット数×7

    =6×7

    =42

    バーコード幅のドット数

    =モジュール幅のドット数×67

    =402

    バーコード印刷領域の幅に必要なドット数

    =バーコード幅のドット数+左右マージンのドット数

    =402+42×2

    =486

    機能キャラクタで指定する領域の幅(1/1,440インチ)

    =↑(バーコード印刷領域の幅に必要なドット数÷解像度)×1,440↑

    =↑(678÷600)×1,440↑

    =1,167

なお,設定例や機能キャラクタへの設定方法については,「付録I.19(2)(b) JAN(標準/短縮)」を参照してください。

(b) チェックディジットの求め方

JAN(標準)での「490123456789」のデータ(データキャラクタ)のチェックディジット(モジュラチェックキャラクタ)は,次のような計算方法で求められます。

  1. けた位置を付けます。

    求めるチェックディジット(モジュラチェックキャラクタ)は,1けた目です。

    けた位置

    データ

    13

    4

    12

    9

    11

    0

    10

    1

    9

    2

    8

    3

    7

    4

    6

    5

    5

    6

    4

    7

    3

    8

    2

    9

    1

    ?

  2. 偶数けたの数字を加算します。

    9+1+3+5+7+9=34

  3. 2.で求めた値を3倍します。

    34×3=102

  4. 1けた目を除く,奇数けたの数字を加算します。

    4+0+2+4+6+8=24

  5. 3.で求めた値と,4.で求めた値を加算します。

    102+24=126

  6. 5.で求めた値の下1けたの数字を10から減算します。

    10−6=4

この値が,チェックディジット(モジュラチェックキャラクタ)です。なお,5.で求めた値の下1けたの数字が「0」の場合は,チェックディジット(モジュラチェックキャラクタ)は「0」です。同様に,JAN(短縮)でも,上記の方法でチェックディジット(モジュラチェックキャラクタ)を求めることができます。

(3) ITF

ITFについて説明します。なお,次の用語はJIS X 0501に基づいています。

(a) 印刷領域の幅

ITFでは,倍率(0.25〜1.20)と解像度(環境設定ユティリティの[バーコード設定]タブ−[出力設定]−[解像度]の指定値)を基準にしてバーコードの大きさが変化します。

次の例では,0.3倍相当のITFバーコードを解像度600dpi,10けたのデータ文字列にて出力する場合の印刷領域の幅と高さの求め方を記載しています。

細エレメント幅のドット数

=│(4×倍率×解像度)÷100│

=│(4×0.3×600)÷100│

=7

太エレメント幅のドット数

=│倍率×解像度÷10│

=│0.3×600÷10│

=18

左マージンのドット数

=右マージンのドット数

=細エレメント幅のドット数×10

=7×10

=70

バーコード幅のドット数

=細エレメント幅のドット数×6+太エレメント幅のドット数+(細エレメント幅のドット数×3+太エレメント幅のドット数×2)×文字数

=7×6+18+(7×3+18×2)×10

=630

バーコード印刷領域の幅に必要なドット数

=バーコード幅のドット数+左右マージンのドット数

=630+70+70

=770

機能キャラクタで指定する領域の幅(1/1,440インチ)

=↑(バーコード印刷領域の幅に必要なドット数÷解像度)×1,440↑

=↑(770÷600)×1,440↑

=1,848

なお,設定例や機能キャラクタへの設定方法については,「付録I.19(2)(c) ITF」を参照してください。

(b) 注意事項

  • ベアラーバーについて

    PDE for Openではベアラーバーの出力は行いません。

  • バーコードの表示文字への空白文字の挿入について

    JIS規格では,表示文字を目視しやすいように,次の間隔で空白文字を挿入します。

    a.右側から1文字目と2文字目の間

    b.右側から7文字目と6文字目の間

    c.右側から11文字目と12文字目の間

    PDE for Openではこの空白文字の挿入は行いません。

  • 文字数の制限

    ITFのバーコードキャラクタ群は必ず偶数個のキャラクタで構成するため,機能キャラクタ内の文字データには,偶数けたの文字を指定してください。

(4) NW-7

NW-7について説明します。なお,次の用語はJIS X 0503に基づいています。

(a) 印刷領域の幅(PDE for Open標準サイズのNW-7バーコードを生成する場合)

環境設定ユティリティの[バーコード設定]タブ−[詳細設定]−[NW-7バーコード生成時の動作]−[ホスト互換サイズのバーコードを生成する]がオフ(デフォルトはオフ)の場合,PDE for Open標準サイズのNW-7バーコードを生成します。

PDE for Open標準サイズのNW-7では,細エレメントの幅(20〜120[1/100mm])と解像度(環境設定ユティリティの[バーコード設定]タブ−[出力設定]−[解像度]の指定値)を基準にしてバーコードの大きさを計算します。基準とする細エレメントの幅から,必要な印刷領域の幅を求める方法を次に示します。次の例では,細エレメントの幅を20[1/100mm]とし,解像度600dpiでデータ文字列「A01234567890A」を出力する場合の値を記載しています。

細エレメントのドット数

=│(細エレメントの幅[1/100mm]×解像度)÷2,540│

=│(20×600)÷2,540│

=5

太エレメントのドット数

=│(細エレメントの幅[1/100mm]×解像度)÷1,016│

=│(20×600)÷1,016│

=12

バーコードキャラクタ(数字,-,$)の幅のドット数

=細エレメントのドット数×5+太エレメントのドット数×2

=5×5+12×2

=49

バーコードキャラクタ(英字,:,/,.,+)の幅のドット数

=細エレメントのドット数×4+太エレメントのドット数

=5×4+12×3

=56

キャラクタ間ギャップのドット数

=細エレメントのドット数

=5

左マージンのドット数

=右マージンのドット数

=細エレメントのドット数×10

=5×10

=50

バーコード幅のドット数

=キャラクタ(数字,-,$)の幅のドット数×A+キャラクタ(英字,:,/,.,+)の幅のドット数×B+キャラクタ間ギャップのドット数×(A+B−1)

=49×11+56×2+5×12

=711

注※ 数字(0〜9)と特殊文字(-,$)のけた数をA,アルファベット(A〜D)と特殊文字(:,/,.,+)のけた数をBとしています。

バーコード印刷領域の幅に必要なドット数

=バーコード幅のドット数+左右マージンのドット数

=711+50+50

=811

機能キャラクタで指定する領域の幅(1/1,440インチ)

=↑(バーコード印刷領域の幅に必要なドット数÷解像度)×1,440↑

=↑(811÷600)×1,440↑

=1,947

なお,設定例や機能キャラクタへの設定方法については,「付録I.19(2)(d) NW-7」を参照してください。

(b) 印刷領域の幅(ホスト互換サイズのNW-7バーコードを生成する場合)

環境設定ユティリティの[バーコード設定]タブ−[詳細設定]−[NW-7バーコード生成時の動作]−[ホスト互換サイズのバーコードを生成する]がオン(デフォルトはオフ)の場合,ホスト互換サイズのNW-7バーコードを生成します。

ホスト互換サイズのNW-7のバーコードのサイズは,大,中,小の3種類の中から印刷領域内に収まる最大のサイズが自動的に選択されます。各大きさのバーコードを出力するのに必要な印刷領域の幅を次の表に示します。表内の「x」は数字(0〜9)と特殊文字(-,$)のけた数,「y」はアルファベット(A〜D)と特殊文字(:,/,.,+)の文字数を表します。

表H‒6 ホスト互換サイズのNW-7バーコードのサイズ

解像度

サイズ

バーコード幅

(mm)

左マージン

(mm)

右マージン

(mm)

印刷領域に必要な幅

mm

1/1,440インチ

480/600/1200

2.54x+2.96y

2.75

2.75

2.54x+2.96y+5.5

144x+168y+312

4.23x+5.08y

4.76

4.76

4.23x+5.08y+9.52

240x+288y+540

6.88x+7.99y

7.41

7.41

6.88x+7.99y+14.82

390x+453y+840

注※

環境設定ユティリティの[バーコード設定]タブ−[出力設定]−[解像度]の指定値(デフォルトは600)。

なお,設定例や機能キャラクタへの設定方法は,「付録I.19(2)(d) NW-7」のNW-7の指定例を参照してください。

(5) カスタマバーコード

カスタマバーコードについて説明します。

(a) 印刷領域の幅

カスタマバーコードでは,ポイント数(8ポ〜11.5ポ)と解像度(環境設定ユティリティの[バーコード設定]タブ−[出力設定]−[解像度]の指定値)を基準にしてバーコードの大きさが変化します。

次の例では,8ポイント相当のバーコードを解像度600dpiで出力する場合に必要な印刷領域の幅と高さを求める方法を記載しています。

バー幅のドット数

=│(ポ数×解像度×236)÷100,000│

=│(8×600×236)÷100,000│

=11

バースペースのドット数

=│(ポ数×解像度×207)÷100,000│

=│(8×600×207)÷100,000│

=10

左マージンのドット数

=右マージンのドット数

=│(ポ数×解像度×787)÷100,000│

=│(8×600×787)÷100,000│

=38

バーコード幅のドット数

=バー幅のドット数×67+バースペースのドット数×66

=1,397

バーコード印刷領域の幅に必要なドット数

=バーコード幅のドット数+左右マージンのドット数

=1,397+38×2

=1,473

バーコード印刷領域の高さに必要なドット数

=│(ポ数×解像度×138)÷10,000│+2

=│(8×600×138)÷10,000│+2

=68

機能キャラクタで指定する領域の幅(1/1,440インチ)

=↑(バーコード印刷領域の幅に必要なドット数÷解像度)×1,440↑

=↑(1,473÷600)×1,440↑

=3,536

機能キャラクタで指定する領域の高さの最低値(1/1,440インチ)

=↑(バーコード印刷領域の高さに必要なドット数÷解像度)×1,440↑

=↑(68÷600)×1,440↑

=164

なお,設定例や機能キャラクタへの設定方法については,「付録I.19(2)(e) カスタマバーコード」を参照してください。

(b) チェックディジットの求め方

バーコードは,データとチェックディジットで構成されています。カスタマバーコードを設計する場合,バーコードの値はデータの変換値とチェックディジットの和が19の倍数になるようにします。

[図データ]

<チェックディジットの計算方法>
  1. データを変換規則に従って数値に変換する

    データの変換規則については,次の<変換規則>を参照してください。数字および「-」を1文字,英字を2文字として数えます。有効なデータは20文字です。有効データ長が19文字以下の場合には,不足分のデータとして制御コード(CC4)を仮定して計算します。有効データ長が20文字を超える場合には,超過分は出力されないので計算の対象外とします。

  2. チェックディジットを算出する

    チェックディジットを算出する式を次に示します。

    チェックディジット=19−((データの変換値の和÷19)の余り)

  3. データの変換値とチェックディジットの合計が19の倍数になっているか確認する

<データの変換規則>

カスタマバーコードの変換規則を次に示します。

  • 数字(0〜9)の場合

    データ

    変換する数値

    0

    0

    1

    1

    2

    2

    3

    3

    4

    4

    5

    5

    6

    6

    7

    7

    8

    8

    9

    9

  • 英字(A〜Z)の場合

    データ

    制御コード

    変換する数値

    A

    CC1

    0

    B

    CC1

    1

    C

    CC1

    2

    D

    CC1

    3

    E

    CC1

    4

    F

    CC1

    5

    G

    CC1

    6

    H

    CC1

    7

    I

    CC1

    8

    J

    CC1

    9

    K

    CC2

    0

    L

    CC2

    1

    M

    CC2

    2

    N

    CC2

    3

    O

    CC2

    4

    P

    CC2

    5

    Q

    CC2

    6

    R

    CC2

    7

    S

    CC2

    8

    T

    CC2

    9

    U

    CC3

    0

    V

    CC3

    1

    W

    CC3

    2

    X

    CC3

    3

    Y

    CC3

    4

    Z

    CC3

    5

    注※

    制御コードおよび「-」は,さらに次の数値に変換します。

    制御コード

    数値

    CC1

    11

    CC2

    12

    CC3

    13

    CC4(不足データ)

    14

    -

    10

チェックディジットの計算例を次に示します。
例1

データが15400233-16-4の場合

[図データ]

チェックディジットの算出式に当てはめると次のようになります。

147=19×7+14
チェックディジット=19−14=5

したがって,15400233-16-4のチェックディジットは5となります。バーコード機能キャラクタ内に指定するデータ用文字を次のように組み立てます。

[図データ]

文字列"15400233-16-4△△△△△△△05"をバーコード機能キャラクタ内のデータ用文字として指定します。

例2

データが22800023-620-2-9-102の場合

[図データ]

チェックディジットの算出式に当てはめると次のようになります。

79=19×4+3
チェックディジット=19−3=16

したがって,22800023-620-2-9-102のチェックディジットは16となります。

バーコード機能キャラクタ内に指定するデータ用文字を次のように組み立てます。

[図データ]

文字列"2280023-620-2-9-10216"をバーコード機能キャラクタ内のデータ用文字として指定します。

例3

データが22500011-4695-5-A-B1の場合

[図データ]

チェックディジットの算出式に当てはめると次のようになります。

102=19×5+7
チェックディジット=19−7=12

したがって,22500011-4695-5-A-B1のチェックディジットは12となります。

バーコード機能キャラクタ内に指定するデータ用文字を次のように組み立てます。

[図データ]

文字列"22500011-4695-A-B112"をバーコード機能キャラクタ内のデータ用文字として指定します。

(6) EAN128

EAN128バーコードについて説明します。なお,PDE for Openでは,コンビニエンスストアでの料金代理収納システムで使用されるEAN128バーコードの出力にだけ対応しています。

(a) 印刷領域

コンビニエンスストアでの料金代理収納システム用のEAN128(CVS-EAN128)バーコードは,次の表にあるバーコード印刷領域の大きさに関する制限を考慮して開始位置と終了位置を決めてください。

表H‒7 CVS-EAN128バーコード印刷時に指定する印字領域

設定内容

解像度

バーコード文字表示

CVS-EAN128印刷領域の幅

CVS-EAN128印刷領域の高さ

PDE - EAN128 Optionがインストールされていない,またはEAN128パターンファイルを使用しない

180

あり

4,896/1,440インチ以上

855/1,440インチ以上

なし

567/1,440インチ以上

240

あり

3,744/1,440インチ以上

855/1,440インチ以上

なし

567/1,440インチ以上

300

あり

3,168/1,440インチ以上

855/1,440インチ以上

なし

3,053/1,440インチ以上

567/1,440インチ以上

400

あり

3,399/1,440インチ以上

855/1,440インチ以上

なし

567/1,440インチ以上

480

あり

3,168/1,440インチ以上

855/1,440インチ以上

なし

2,880/1,440インチ以上

567/1,440インチ以上

600

あり

3,168/1,440インチ以上

855/1,440インチ以上

なし

3,053/1,440インチ以上

567/1,440インチ以上

1200

あり

3,168/1,440インチ以上

855/1,440インチ以上

なし

3,053/1,440インチ以上

567/1,440インチ以上

PDE - EAN128 Optionがインストールされている,かつEAN128パターンファイルを使用する

あり

3,402/1,440インチ以上

855/1,440インチ以上

なし

567/1,440インチ以上

(凡例)

−:該当しません。

注※

環境設定ユティリティの[バーコード設定]タブ−[出力設定]−[解像度]の指定値(デフォルトは600)。

(b) チェックディジットの求め方

全体チェックディジット(モジュラス10)の値は次の1〜5の手順で計算します。

[図データ]

  1. データに対して先頭から全体チェックディジット(モジュラス10)までの数字44けたにけた番号を付けます。

    上記の表で示すデータ例では,最右端のけた(全体チェックディジット(モジュラス10)のけた)を第1けたとすると,最左端のけたは第44けたとなります。

  2. A=(Σ偶数けたの数字)×3として,Aの値を計算します。

    上記の表にあるデータ例でAを計算すると次に示す計算式になります。

    A=(9+9+2+4+0+2+4+6+8+0+2+4+6+8+0+0+0+3+0+2+4+6)×3=79×3=237
  3. B=(Σ第1けたを除く奇数けたの数字)として,Bの値を計算します。

    上記の表にあるデータ例でBを計算すると次に示す計算式になります。

    B=1+1+3+5+1+3+5+7+9+1+3+5+7+9+1+1+3+1+1+3+5=75
  4. C'=((A+B)÷10の余り)でC'を求めます。

    手順2,3で計算したA,Bを使ってCを計算すると次に示す計算式になります。

    C'=((237+75)÷10の余り)=(312÷10の余り)=2
  5. C'=0ならC=0,C'≠0ならC=10−C'としてCの値を計算します。

    手順4で計算したC'を使ってCを計算すると次に示す計算式になります。

    C'≠0なので,C=10−C'=10−2=8

    Cが全体チェックディジット(モジュラス10)の値となります。上記の表にあるデータ例で全体チェックディジットのけたには「8」を設定することになります。

チェックディジット(モジュラス103)の値は次の1〜5の手順で計算します。

[図データ]

  1. データに対して先頭から全体チェックディジット(モジュラス10)までの数字44けたを2数字×22に分けます。

  2. 22組の数字を左端から第1組,第2組,・・・,第22組として,それぞれに重みづけします。

    2けた数字の任意の組Knに対する重みづけMnはMn=n+1で表される値になります(nは1〜22の自然数)。

  3. A=105+102+Σ(Kn×Mn)として,Aの値を計算します。

    上記の表にあるデータ例でAを計算すると次に示す計算式になります。

    A=105+102+(91×2)+(91×3)+(23×4)+・・・+(45×22)+(68×23)
    =105+102+182+273+92+・・・+990+1,564=9,877
  4. B=(A÷103の余り)として,Bの値を計算します。

    手順3で計算したAを使ってBを計算すると次に示す計算式になります。

    B=9,877÷103の余り=92
  5. Bの値が0〜9の場合,CはBの値の前に「0」を付けて表す2けた数字,Bの値が10〜99の場合,CはBが表す2けた数字,Bの値が100〜102の場合,CはBが表す3けた数字として,Cがチェックディジット(モジュラス103)の値となります。

    上記の表にあるデータ例でチェックディジットのけたには「92」を設定することになります。

    なお,機能キャラクタへの設定方法については,「付録I.19(2)(f) EAN128」を参照してください。

(c) EAN128パターンファイルによる印刷(PDE - EAN128 Optionインストール時)

EAN128パターンファイルを用いることでバーコードリーダによる読み取り精度の高いEAN128バーコードを印刷できます。設定方法については,「7.2.9(6) EAN128パターンファイルを使用する(PDE - EAN128 Optionインストール時の場合)」を参照してください。また詳細については,「PRINT DATA EXCHANGE - High Grade Printer EAN128 Barcode Option取扱説明書」を参照してください。

(d) 注意事項

  • H-6C15およびH-6C17プリンタへEAN128バーコードを印刷する場合は,H-6C15およびH-6C17プリンタ専用のEAN128パターンファイルを使用してPostScript印刷した場合だけ保証します。

  • HT-4558,HT-4559,HT-4561およびH-6C26プリンタへEAN128バーコードを出力する場合はPostScript印刷した場合だけ保証します。

  • GDIでのバーコード印刷およびPDF出力したバーコードのAcrobatからの印刷については推奨しません。

  • バーコードを印刷する帳票の縮小印刷は推奨しません。

  • H-6C15およびH-6C17プリンタで,EAN128パターンファイルを使用しない印刷については推奨しません。

(7) QRコード

ここでは,QRコードについて説明します。

(a) サポート範囲

PDE for Openでは,JIS X 0510で規定されているQRコードの規格に対し,次に示す表の範囲でQRコード出力に対応します。

表H‒8 サポートする範囲と説明

名称

説明

モデル

モデル2※1

バージョン

バージョン1からバージョン20まで※2

誤り訂正レベル

M(15%)※3

クワイエットゾーン

シンボルの周りのクワイエットゾーンはPDE for Openが付加します。サイズは4モジュールとします。※4

モード

数字モード,英数字モード,8ビットバイトモード,漢字モード,混在モード

モジュールサイズ

機能キャラクタで指定された領域およびデータ量,または指定されたバージョンに応じて1ドット以上(環境設定ユティリティの[バーコード設定]タブ−[出力設定]−[解像度]で指定された解像度換算)の可変サイズとなります。

注※1

JIS規格ではモデル1,モデル2があります。

注※2

JIS規格ではバージョン40まであります。

注※3

JIS規格ではL(7%),M(15%),Q(25%),H(30%)があります。

注※4

JIS規格ではクワイエットゾーンのサイズは,4モジュール以上としています。

(b) モード

入力データを判定して自動的にモードを決定します。その結果,データが格納できるバージョンも自動的に決定されます

注※ 機能キャラクタでバージョンを指定していない場合の動作です。

表H‒9 サポートするモード

モード

説明

数字モード

'0'〜'9'までの10進数集合(JIS X 0201-1997の(30)16〜(39)16)のデータを扱います。通常は,数字モードでは3文字を10ビットで符号化します。

英数字モード

次のデータを扱います。

  • '0'〜'9'までの10進数集合(JIS X 0201-1997の(30)16〜(39)16

  • 'A'〜'Z'までのアルファベット文字(JIS X 0201-1997の(41)16〜(5A)16

  • 9個の記号「'△','$','%','*','+','-','.','/',':'」(JIS X 0201-1997の(20)16,(24)16,(25)16,(2A)16,(2B)16,(2D)16,(2E)16,(2F)16,(3A)16

通常は,英数字モードでは2文字を11ビットで符号化します。

8ビットバイトモード

JIS X 0201-1997に基づく8ビットのラテン文字・カタカナ用8ビット符号に規定された文字を扱います。通常は,8ビットバイトモードでは1文字を8ビットで符号化します。

漢字モード

JIS X 0208-1990の附属書1に規定された漢字を扱います。各2バイトの文字は13ビット2進コード語に圧縮します。

混在モード

QRコードモデル2シンボルは,上記に規定する任意のモード(数字モード/英数字モード/8ビットバイトモード/漢字モード)の組み合わせによるデータを扱えます。

(c) 指定できる文字

QRコードに入力できる文字の範囲を示します。範囲外の漢字が入力された場合はエラーとなり,このQRコードは出力されません。QRコードに入力できる文字の詳細については,JIS X 0208-1990の附属書1を参照してください。

  • 1バイト文字(JIS8):JIS X 0201-1997

  • 漢字(シフトJIS):JIS X 0208-1990の内の(8140)16〜(9FFC)16と(E040)16〜(EBBF)16の文字

    印刷データのエンコードがUTF-8の場合は,上記の範囲に該当する文字をUTF-8で指定します。

    図H‒5 QRコードに指定できる漢字の範囲

    [図データ]

(d) バージョンについて

バーコード機能キャラクタのバージョンに0を指定した場合,QRコードのバージョン(最大20)は入力データの容量によって自動計算されます。バーコード機能キャラクタでバージョンに1〜20を指定した場合は,指定されたバージョンでQRコードを出力します。各バージョンの入力データの最大容量,入力データのけた数とQRコードの大きさの関係を次に示します。

表H‒10 入力データとQRコードの大きさの関係

入力データ

バージョン

モジュール数(クワイエットゾーンは除く)

QRコードの大きさ(クワイエットゾーンを含む)

数字(けた)

英数字(けた)

8ビットバイト(けた)

漢字(けた)

混在(ビット)

34

20

14

8

128

1

21

モジュールサイズ×(モジュール数+8)

63

38

26

16

224

2

25

101

61

42

26

352

3

29

149

90

62

38

512

4

33

202

122

84

52

688

5

37

255

154

106

65

864

6

41

293

178

122

75

992

7

45

365

221

152

93

1,232

8

49

432

262

180

111

1,456

9

53

513

311

213

131

1,728

10

57

604

366

251

155

2,032

11

61

691

419

287

177

2,320

12

65

796

483

331

204

2,672

13

69

871

528

362

223

2,920

14

73

991

600

412

254

3,320

15

77

1,082

656

450

277

3,624

16

81

1,212

734

504

310

4,056

17

85

1,346

816

560

345

4,504

18

89

1,500

909

624

384

5,016

19

93

1,600

970

666

410

5,352

20

97

注※

混在の場合のビット数は,各文字列単位で算出したビット数の合計になります。

(e) 混合データのビット数

各文字列のビット数はモードインジケータ長(データの種類)+文字列インジケータ長(文字列のけた数)+データ長から成ります。文字列の種類の切り分けは1バイト文字列と2バイト文字列(漢字)に分類し,1バイト文字列はすべて数字だった場合に「数字」,数字以外の文字列がある場合は,「8ビットバイト」の文字列になります。半角カタカナは1文字として扱います。各文字列のビット数の算出方法を次に示します。

表H‒11 混在データのビット数の計算方法

文字列の種類

モードインジケータ長

文字列インジケータ長

データ長

数字

4

10

12

10×↓けた数/3↓+X

Xの値:けた数/3の余りが0のとき0

Xの値:けた数/3の余りが1のとき4

Xの値:けた数/3の余りが2とき7

英数字

4

9

11

11×↓けた数/2↓+6×X

Xの値:けた数/2の余りが0のとき0

Xの値:けた数/2の余りが1のとき1

8ビットバイト

4

8

16

8×けた数

漢字

4

8

10

13×けた数

注※

バージョン1〜9は上段の値です。また,バージョン10〜20は下段の値です。

計算式を次に示します。

[図データ]

(f) バーコードサイズとレイアウト

QRコードは,機能キャラクタで指定された印刷領域の幅または高さのどちらか小さいほうにほぼ一致するサイズで印刷領域の中央に出力されます。このときのQRコードには,周囲に4モジュール分のクワイエットゾーンが確保されます。出力例を次に示します。

図H‒6 QRコードの出力例

[図データ]

(g) モジュールサイズ

モジュールサイズは,印刷領域の大きさ(幅または高さの最小値),解像度(環境設定ユティリティの[バーコード設定]タブ−[出力設定]−[解像度]の指定値),QRコードのバージョンによって自動計算されます。次に計算方法を示します。

  • 印刷領域のドット数=印刷領域の大きさ(mm:幅または高さの最小値)×解像度(dpi)÷25.4(小数点以下四捨五入)

  • モジュール数=21+4×(バージョン−1)

  • モジュールサイズのドット数=↓印刷領域のドット数÷(モジュール数+ 8)↓

バーコード印刷領域が30mm,解像度を600dpiにした場合のモジュールサイズの計算例を次の表に示します。

表H‒12 QRコードのモジュールサイズの計算例

バーコード印刷領域の大きさ

解像度

印刷領域のドット数

バージョン

モジュール数

モジュールサイズ

QRコードの大きさ(クワイエットゾーンは除く)

mm

1/1,440インチ

dpi

ドット

ドット

mm

mm

30.0

1701

600

709

1

21

24

1.016

21.336

2

25

21

0.889

22.225

3

29

19

0.804

23.326

4

33

17

0.720

23.749

5

37

15

0.635

23.495

6

41

14

0.593

24.299

7

45

13

0.550

24.765

8

49

12

0.508

24.892

9

53

11

0.466

24.680

10

57

10

0.423

24.130

11

61

10

0.423

25.823

12

65

9

0.381

24.765

13

69

9

0.381

26.289

14

73

8

0.339

24.723

15

77

8

0.339

26.077

16

81

7

0.296

24.003

17

85

7

0.296

25.188

18

89

7

0.296

26.374

19

93

7

0.296

27.559

20

97

6

0.254

24.638

 モジュールサイズが0となる場合は,描画されません。また,モジュールサイズが小さ過ぎる場合,QRコードの読み取り装置で読み取れなくなるおそれがあります。読み取り装置の性能にあったモジュールサイズになるように,バーコード印刷領域を調整してください。

(h) 注意事項

指定できる漢字の範囲内の文字に当てはまらない場合(外字領域など),PDE for Openでは次のエラーをログに出力します。ログの情報を基に,機能キャラクタに格納する文字列を見直してください。

QRコードに格納できない文字が指定されました。座標:(xxxx,yyyy),ページ:pppp,SJISコード:XXXX,詳細コード:dddddddd
QRコードに格納できない文字が指定されました。座標:(xxxx,yyyy),ページ:pppp,Unicode:U+XXXX,詳細コード:dddddddd