バーコードジェネレータオプション
バーコードジェネレータオプションは、文書中に画像として直接バーコードを埋め込むためのオプションです。バーコードフォントなどは必要ありません。
バーコードは、dataスキームを用いて次のように指定します。
ここに、application/vnd.ah-barcodeは専用のメディアタイプです。出力したいバーコードの内容は、上記のように直接文字列として指定することができます。このとき、URIとして不適切な文字を%エンコードで表現することに注意してください。また、Base64で指定することもできます。
出力されるバーコードの制御は、メディアタイプのパラメータで行います。パラメータの大文字小文字は区別されません。typeパラメータは必須で、出力バーコードの種類を示します。
バーコードは、常に axf:image-smoothing="false" に強制されます。
注意: | ここでは、バーコードの仕様には立ち入りません。それぞれのバーコードの仕様書を参照してください。 |
---|
QR / Micro QR
QRは、JIS X 0510:2004 または ISO/IEC 18004:2006 で規格制定されています。バーコードジェネレータオプションでは、QRはModel2にのみ対応しています(Model1には対応していません)。以下のパラメータを指定できます。
パラメータ | 値 | 既定値 | 内容 | ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
type | QR | Micro | <必須> | ||||||||||||||||
ver | auto | 1~40 | auto | 1~4 | auto | バージョン | |||||||||||||||
ecl | auto | L | M | Q | H | auto | エラー訂正レベル | ||||||||||||||||
enc | auto | [ N || A || B || K ] | auto | エンコーディング
| ||||||||||||||||
mpr | auto | 0~7 | auto | 0~3 | auto | マスクパタン参照 | |||||||||||||||
scale | <正数> | 1 | 1セルの出力サイズ | ||||||||||||||||
qz | <非負数> | 4 or 2 | 余白(クワイエットゾーン) 既定値は QR のとき 4、MicroQR のとき 2 | ||||||||||||||||
out | svg | png | svg | 出力形式 | ||||||||||||||||
dpi | <非負数> | 0 | pngのときの画像解像度(0は指定なし) | ||||||||||||||||
color | <色> | black | バーコードの色 | ||||||||||||||||
bgcolor | <色> | white | バーコードの背景色 | ||||||||||||||||
charset | <任意文字列> | UTF-8 | 直接文字列指定のエンコーディング |
バージョンverにautoを指定したときは、データの長さによって適切なバージョンが採用されます。
エラー訂正レベルeclにautoを指定したときは、データやバージョンによって適切なエラー訂正レベルが採用されます。
エンコーディング指定encで、auto以外は複数を指定できます。例えば、enc=NAB と指定すれば、これら3種を混合して適切に出力します。指定エンコーディングで出力できなければエラーです。
QRは、白黒パタンがなるべく均一になるようにある種のマスク処理が施されています。マスクパタン参照mpr指定は、この処理を特定のパタンによるものに強制します。自動的に選択されるパタンよりも均一さで劣るかも知れませんが、誤ったQRというわけではありません。
1セルの出力サイズscaleは、svgとpngで指定できる形式が異なります。
- svg
正の単位付きの実数値を指定できます。0以下は指定できません。指定できる単位は、em、ex、px、pt、pc、in、cm、mm、jpt、q、twip、emu のいずれかです。単位なしはpxとみなされます。
- png
1以上の整数値を指定できます。単位は付けられません。実数値を指定した場合は、小数点以下は切り捨てられます。
qzで指定できる余白(クワイエットゾーン)は、仕様で QR のとき 4、MicroQR のとき 2 と定められています。これを変更することができますが、これよりも狭くしたときの動作は保証されません。
画像解像度dpi指定は、pngのときのみ有効で、実数値を指定できます。単位は付けられません。
color には transparent 以外の任意の色を指定できますが、pngでは color または bgcolor が指定されているとRGBに変換されます。 bgcolor には transparent も指定できます。
- color=red
- color='#FF0000'
- color='rgb-icc(#Grayscale,0.5)'
この例の場合、適切に値を引用符処理していることに注意してください。引用符処理しないときは、次のように適切に%エスケープ処理をしなければなりません。
- color=%23FF0000
- color=rgb-icc(%23Grayscale%2C0.5)
color に半透明を指定した場合、svg と png ではバーコードの色合いが異なることがあります。svg では背景の bgcolor の上に前景の color が描かれるのに対して、png では bgcolor と color が重なって描かれることはありません。
charset指定は、Base64でなく直接文字列を指定したときのQRに出力するエンコーディングを示します。これは、エンコーディングに漢字が指定されていないときに適用されます。Base64で指定されたデータは、そのまま無変換で出力されます。
注意: | QRが漢字モードで処理できるのは、すべての Shift JIS コードの範囲ではありません。QRリーダによっては、そのような文字を読み取れないことがあります。 |
---|
注意: | 構造的連接には対応していません。 |
---|
Data Matrix
Data Matrix は、ISO/IEC 16022:2006 で規格制定されています。バーコードジェネレータオプションでは、Data Matrix は ECC 200 にのみ対応しています。以下のパラメータを指定できます。
パラメータ | 値 | 既定値 | 内容 | ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
type | DataMatrix | DM | <必須> | |||||||||||||||||
enc | auto | [ A || C || T || X || E || B ] | raw | auto | エンコーディング
| ||||||||||||||||
shape | S | R | S |
バーコードの形状
| ||||||||||||||||
scale | <正数> | 1 | 1セルの出力サイズ ☞ scale | ||||||||||||||||
qz | <非負数> | 1 | 余白(クワイエットゾーン) | ||||||||||||||||
out | svg | png | svg | 出力形式 | ||||||||||||||||
dpi | <非負数> | 0 | pngのときの画像解像度(0は指定なし) | ||||||||||||||||
color | <色> | black | バーコードの色 ☞ color | ||||||||||||||||
bgcolor | <色> | white | バーコードの背景色 ☞ color |
エンコーディング指定encで、autoまたはraw以外は複数を指定できます。例えば、enc=ACE と指定すれば、これら3種を混合して適切に出力します。このとき、A は指定しなくても常に指定されているとみなされます。
rawは、入力データを無加工で出力します。このとき、以下に注意してください。
- 入力データにエラー訂正コードは含まれません。
- 自動的なパディングは行われないので、データサイズがマトリクスの容量に満たない場合はエラーです。
- 入力データが仕様に適合しているかどうかは関知しません。
画像解像度dpi指定は、pngのときのみ有効で、実数値を指定できます。単位は付けられません。
注意: | 構造的連接には対応していません。 |
---|
PDF417
PDF417 は、JIS X 0508:2010 または ISO/IEC 15438:2006 で規格制定されています。バーコードジェネレータオプションでは、CompactPDF417、MacroPDF417、MicroPDF417 には対応していません。以下のパラメータを指定できます。
パラメータ | 値 | 既定値 | 内容 | ||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
type | PDF417 | <必須> | |||||||||
enc | auto | [ T || N || B ] | auto | エンコーディング
| ||||||||
ecl | auto | 0~8 | auto | エラー訂正レベル | ||||||||
r | auto | 3~90 | auto | 行数 | ||||||||
c | auto | 1~30 | auto | 1行の桁数(データのみ) | ||||||||
h | <正数> | 3 | 1行の高さ(幅に対する割合) | ||||||||
scale | <正数> | 1 | バーの幅 ☞ scale | ||||||||
qzx | <非負数> | 2 | 横方向の余白(クワイエットゾーン) | ||||||||
qzy | <非負数> | 2 | 縦方向の余白(クワイエットゾーン) | ||||||||
out | svg | png | svg | 出力形式 | ||||||||
dpi | <非負数> | 0 | pngのときの画像解像度(0は指定なし) | ||||||||
color | <色> | black | バーコードの色 ☞ color | ||||||||
bgcolor | <色> | white | バーコードの背景色 ☞ color |
エンコーディング指定encで、auto以外は複数を指定できます。例えば、enc=TNB と指定すれば、これら3種を混合して適切に出力します。指定エンコーディングで出力できなければエラーです。
バーコードのサイズを r と c で指定できます。c は、データのみの桁数です。スタートパターン、左行識別子、右行識別子、エンドパターンは含みません。r も c も指定しなかった場合は、必要なサイズが計算されます。どちらか一方を指定した場合は、他方のサイズが計算されます。両方指定したとき、必要サイズに満たない場合はエラーです。1行あたりのバーの数は、c*17+69 となります。
h は、1行あたりのバーの高さを幅の何倍にするかを指定します。仕様では3以上と定められています。それよりも小さい値を指定できますが、そのときの動作は保証されません。
qzx、qzy で指定できる余白(クワイエットゾーン)は、仕様では2以上と定められています。それよりも小さい値を指定できますが、そのときの動作は保証されません。
画像解像度dpi指定は、pngのときのみ有効で、実数値を指定できます。単位は付けられません。
Aztec Code
Aztec Code は、ISO/IEC 24788:2008 で規格制定されています。以下のパラメータを指定できます。
パラメータ | 値 | 既定値 | 内容 | |
---|---|---|---|---|
type | Aztec | Aztec | <必須> | |
ecl | 5~95 | 23 | エラー訂正レベル (%)(AztecRuneでは無効) | |
scale | <正数> | 1 | 1セルの出力サイズ ☞ scale | |
qz | <非負数> | 0 | 余白(クワイエットゾーン) | |
out | svg | png | svg | 出力形式 | |
dpi | <非負数> | 0 | pngのときの画像解像度(0は指定なし) | |
color | <色> | black | バーコードの色 ☞ color | |
bgcolor | <色> | white | バーコードの背景色 ☞ color |
AztecRune のときは、入力データに 0~255 の10進数文字列を与えます。
eclは入力データから生成されるコードに対する割合です。全体のコード数は、少なくとも (生成されるコード数+3)*100/(100-ecl) となります。
画像解像度dpi指定は、pngのときのみ有効で、実数値を指定できます。単位は付けられません。
注意: | Extended Channel Interpretation (ECI), Reader Initialization Symbol には対応していません。構造的連接には対応していません。 |
---|
カスタマバーコード
カスタマバーコードは、日本郵便カスタマバーコードや Intelligent Mail® Barcode のようなバーコードです。以下のパラメータを指定できます。
パラメータ | 値 | 既定値 | 内容 |
---|---|---|---|
type | JPCBC | <必須> | 日本郵便カスタマバーコード |
IMBC | Intelligent Mail® Barcode | ||
POSTNET | |||
l | <正数> | <後述> | ロングバー/フルバーの長さ |
t | <正数> | <後述> | タイミングバー/トラッカバーの長さ |
h | <正数> | <後述> | ハーフバーの長さ(POSTNETのみ) |
w | <正数> | <後述> | バーの幅 |
p | <正数> | <後述> | バーのピッチ |
hsp | <非負数> | <後述> | 水平方向の余白 |
vsp | <非負数> | <後述> | 垂直方向の余白 |
out | svg | png | svg | 出力形式 |
dpi | <正数> | 384 | pngのときの画像解像度 |
color | <色> | black | バーコードの色 ☞ color |
bgcolor | <色> | white | バーコードの背景色 ☞ color |
バーの長さや幅、余白などの値は、単位付きの値でなければなりません。指定できる単位は、pt、pc、in、cm、mm、jpt、q、twip、emu のいずれかです。既定値は以下のとおりです。
パラメータ | JPCBC | IMBC | POSTNET |
---|---|---|---|
l | 3.6mm | 0.15in | 0.125in |
t | 1.2mm | 0.05in | |
h | 0.05in | ||
w | 0.6mm | 0.02in | 0.02in |
p | 1.2mm | 0.045in | 0.0416in |
hsp | 2.0mm | 0.125in | 0 |
vsp | 2.0mm | 0.028in | 0 |
pngによる出力では、指定dpiによってバーの長さや幅などがピクセル数に丸められます。そのため、指定の長さと若干異なる出力となることがあります。低解像度を指定したときなどは、バーコードが正しく読み取れない可能性があります。
画像解像度dpi指定は、pngのときのみ有効で、実数値を指定できます。単位は付けられません。
日本郵便カスタマバーコード
JPCBCで 日本郵便カスタマバーコード を指定します。 JPCBCでは、次の文字を指定できます。先頭7文字は郵便番号の数字です。その後に住居表示番号が続きます。住居表示番号は、英字を2文字換算として13文字を超えるとそれ以降は捨てられます。英小文字は英大文字に変換されて出力されます。
0
Intelligent Mail® Barcode
IMBCで Intelligent Mail® Barcode を指定します。 IMBCでは、数字のみを決められた桁数分指定できます。許される桁数は、20、25、29、31のいずれかです。また、2桁目は0~4でなければなりません。
POSTNET
POSTNETでは、数字のみを決められた桁数分指定できます。許される桁数は、5、9、11のいずれかです。
線形バーコード
線形バーコード(一次元バーコード)です。以下のパラメータを指定できます。
パラメータ | 値 | 既定値 | 内容 |
---|---|---|---|
type | EAN | JAN | <必須> | |
UPC | UPC-A、UPC-E | ||
ITF | Interleaved 2of5 | ||
Codabar | NW-7 | |||
Code39 | |||
Code128 | |||
GS1-128 | EAN-128 | |||
w | <正数> | 0.33mm | 細バーの幅 |
r | <正数> | 2.5 | 太バーの幅の細バーの幅に対する比率 EAN JAN UPC Code128 GS1-128 EAN-128 では不使用 |
h | <正数> | 22.86mm | バーの長さ |
qz | <非負数> | 10 | 水平方向の余白(クワイエットゾーン)を細バーの数で指定 |
reduc | <正数> | 1 | バーの幅の表示倍率(svgのときのみ有効) V7.3MR3 |
scale | <正数> | 1 | 表示倍率 |
out | svg | png | svg | 出力形式 |
dpi | <正数> | 384 | pngのときの画像解像度 |
color | <色> | black | バーコードの色 ☞ color |
bgcolor | <色> | white | バーコードの背景色 ☞ color |
text | none | auto | center | justify | none | バーコードの下に元コードのテキストをどのように表示するかを指定(svgのときのみ有効) |
バーの長さや幅、余白などの値は、単位付きの値でなければなりません。指定できる単位は、pt、pc、in、cm、mm、jpt、q、twip、emu のいずれかです。
pngによる出力では、指定dpiによってバーの長さや幅などがピクセル数に丸められます。そのため、指定の長さと若干異なる出力となることがあります。低解像度を指定したときなどは、バーコードが正しく読み取れない可能性があります。
画像解像度dpi指定は、pngのときのみ有効で、実数値を指定できます。単位は付けられません。
textの指定によって、バーコードの下に元コードのテキストを表示することができます。ただし、表示形式は代表的なもののみに対応しています。これは、svgによる出力のときのみ有効です。利用するフォントは、オプション設定ファイルのbarcode-text-fontで指定します。文字の大きさは、バーコードの大きさから自動的に計算されます。
- none
テキストを表示しません。
- auto
JAN/EAN/UPCでは、一部のバーを引き伸ばし先頭1文字を左に出したりする標準的な出力をします。それ以外ではcenterと扱われます。
- center
テキストを中央に寄せて表示します。
- justify
テキストの左右をバーコードの幅にあわせ、均等割り付けして表示します。
EAN / JAN
EANは、JIS X 0507:2004 または ISO/IEC 15420:2009 で規格制定されています。JANはEANと同じです。EAN/JANでは、数字のみで13桁または8桁を指定できます。最後の桁はチェックディジットです。入力は、チェックディジットを除いた12桁または7桁でも構いません。13桁または8桁を与えたときは、最後の桁は無視され、出力時に計算されて正しいものに置き換えられます。
UPC
UPCでは、数字のみで12桁または8桁を指定できます。12桁はUPC-Aであり、8桁はUPC-Eです。UPC-Eでは、最初の桁は0または1でなければなりません。最後の桁はチェックディジットです。入力は、チェックディジットを除いた11桁または7桁でも構いません。12桁または8桁を与えたときは、最後の桁は無視され、出力時に計算されて正しいものに置き換えられます。UPC-Dには対応していません。
Interleaved 2of5
Interleaved 2of5は、JIS X 0505:2004 または ISO/IEC 16390:2007 で規格制定されています。ITFで Interleaved 2of5 を指定します。 ITFでは、数字のみを偶数桁指定できます。
Codabar / NW-7
Codabar/NW-7では、文字列の先頭はABCDのいずれかでなければなりません。末尾はABCDまたはTN*Eのいずれかでなければなりません。中間の文字は次に示す文字を任意桁指定できます。先頭末尾の英小文字は英大文字に変換されます。
0
チェックディジットを付加するか否かを指定できます。チェックディジットを付加するとき、使用できる文字に制限が発生することがあります。
パラメータ | 値 | 既定値 | 内容 | 制限 |
---|---|---|---|---|
cd | none | none | なし | |
m10w2 | モジュラス10 ウェイト2 | 先頭末尾以外は数字のみ | ||
m10w2r | モジュラス10 ウェイト2 ルーンズ | 先頭末尾以外は数字のみ | ||
m10w3 | モジュラス10 ウェイト3 | 先頭末尾以外は数字のみ | ||
m11 | モジュラス11 | 先頭末尾以外は数字のみ6桁以上 | ||
wm11 | 加重モジュラス11 | 先頭末尾以外は数字のみ12桁以下 | ||
m16 | モジュラス16 | |||
7dr | 7dsr | 7チェックDR/DSR | 先頭末尾以外は数字のみ | ||
9dr | 9dsr | 9チェックDR/DSR | 先頭末尾以外は数字のみ |
Code39
Code39は、JIS X 0503:2000 または ISO/IEC 16388:2007 で規格制定されています。Code39では、次の文字を任意桁指定できます。英小文字は英大文字に変換されて出力されます。
0
チェックディジットを付加するか否かを指定できます。
パラメータ | 値 | 既定値 | 内容 |
---|---|---|---|
cd | none | m43 | なし |
m43 | モジュラス43 |
Code128
Code128は、JIS X 0504:2003 または ISO/IEC 15417:2007 で規格制定されています。Code128には、コードセットが CODE-A、CODE-B、CODE-C の3種類あり、どれを使うかをパラメータで指定します。
パラメータ | 値 | 既定値 |
---|---|---|
code | A | B | C | B |
Code128では、U+0000~U+007Fの任意の文字を表現することができます。これらのうち、U+0000~U+001FとU+007F、および制御コードは、別のコードで代替して表現します。
|
|
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
入力できる文字は以下のとおりです。
|
GS1-128 / EAN-128
GS1-128/EAN-128は、ある種の制約のあるCode128です。バーコードジェネレータオプションでは、以下のチェックをします(あるいはしません)。これら以外の制約はCode128と同じです。
- FNC1で始まらなければなりません。
- 制御コード以外で使用できる文字は、以下のとおりです。(空白文字は含まれません)
!"%&'()*+-./0123456789:;<=>?
ABCDEFGHIJKLMNOPQRSTUVWXYZ_
abcdefghijklmnopqrstuvwxyz - FNC2およびFNC4は使用できません。
- 既知のアプリケーション識別子(AI)を認識し、文字数をチェックします。文字種はチェックしません。
- FNC1が必要な書式であっても、固定長の場合はチェックしません。
あらかじめ登録されているAIは以下のとおりです。ここにないAIまたは、書式を変更したいときは、オプション設定ファイルで変更することができます。 AIの最後の桁の * は任意の数字を示します。例えば、310* は 3100~3109 を示します。書式は次のような意味です。書式の最後の F は、FNC1が必要なことを示します。
- n3 : 3桁の数字
- x3 : 3桁の任意文字
- n-10 : 1桁以上10桁以下の数字
- x3-10 : 3桁以上10桁以下の任意文字
|
|
|
|
|
注 : 23* の書式は、最後の桁の数*に対して桁数 2*+1 の固定長となります。例えば、234 なら x9 となります。