バーコード/QRコードプラグイン

このプラグインについて

barcode
Copper PDF 2.1.3 以降で、バーコード(QRコードを含む)の表示が可能になるプラグインです。

このプラグインには、

Barcode4J 2.0
http://barcode4j.sourceforge.net/

QRコードクラスライブラリ for Java ver. 0.50beta
http://www.swetake.com/qr/java/qr_java.html

を使用しています。

インストール方法

こちらからダウンロードしてください。

ダウンロードパッケージに含まれているcopper-pdf/pluginsの内容を、Copper PDFのpluginsディレクトリの中にコピーしてください。

(DEBまたはRPMパッケージ版のCopper PDFのpluginsディレクトリは/usr/share/copper-pdf/にあります。)
Copper PDFが動作中の場合、1分ほど待つか、再起動するとプラグインが読み込まれます。

基本的な使用方法

バーコードタグの詳細な仕様はBarcode4J ドキュメント抄訳を参照してください。ここでは概要を解説します。

パッケージに含まれているサンプルHTMLコード(example.html)もご利用ください。

プラグインをインストールしたCopper PDFでは、HTML/XHTML中に記述された、http://barcode4j.krysalis.org/ns名前空間に属する要素がバーコードに置き換えられます。
例えば、以下の記述はEAN-13(JAN-13)形式のバーコード画像に置き換えられます。

<bc:barcode xmlns:bc="http://barcode4j.krysalis.org/ns"
 message="200123456789">
 <bc:ean-13>
 <bc:height>15mm</bc:height>
 <bc:module-width>0.33mm</bc:module-width>
 <bc:quiet-zone enabled="true">10mw</bc:quiet-zone>
 <bc:checksum>add</bc:checksum>
 <bc:human-readable>
   <bc:placement>bottom</bc:placement>
   <bc:font-size>8pt</bc:font-size>
 </bc:human-readable>
 </bc:ean-13>
</bc:barcode>

要素の記述方法(The Barcode XML format)は以下のページで解説されています。

(英語) http://barcode4j.sourceforge.net/2.0/barcode-xml.html
(日本語訳)
https://copper-pdf.com/?p=905

このプラグインは、Barcode4Jがサポートする、全ての形式のバーコードを表示することが出来ます。
加えて、EAN-13(JAN-13)の変形として、日本国内で流通する図書のISBNを表記するためのバーコードと、QRコードをサポートしています。

CSSによるサイズ、色、フォントの指定

サイズを固定したい場合は、CSSによって指定することができます。
また、背景色と描画色は同様にbackground-color, colorによって指定します。
例えば、以下の例では幅が1cmに固定され、背景色がピンク、描画色が青となります。

<bc:barcode xmlns:bc="http://barcode4j.krysalis.org/ns"
 xmlns:html="http://www.w3.org/1999/xhtml"
 html:style="width: 1cm; background-color: Pink; color: Blue"
 message="エンコードする文字列">
 <bc:qrcode/>
</bc:barcode>

font-name要素による指定は無視されます。代わりに、CSSのfont-family, font-weight, font-styleが適用されます。

OCRBフォントの使用を推奨します。MS Officeに含まれているものや、以下のサイトで配布されているものがあります。
http://ansuz.sooke.bc.ca/software/ocrb.php

QRコードの表示方法

HTML中に次の記述をすることで、QRコードが表示されます。

<bc:barcode xmlns:bc="http://barcode4j.krysalis.org/ns"
 message="エンコードする文字列">
 <bc:qrcode/>
</bc:barcode>

qrcode要素には、次の要素を含むことが出来ます。
QRコードについては、以下のサイトもご参照ください。
http://www.denso-wave.com/qrcode/qrgene2.html

・version

QRコードのバージョンです。0から40の整数で指定します。0の場合は自動設定です。
デフォルトは0です。

・ecc

エラー訂正レベルです。L, M, Q, Hのいずれかを指定します。
デフォルトはMです。

・encmode

エンコードモードです。N(数字), A(英数字), B(8ビットバイト)のいずれかを指定します。
デフォルトはBです。

.module-width

セルの大きさです。単位はcm, mm, pt, inのいずれかを使用可能です。
デフォルトは0.25mmです。

.quiet-zone

上下左右のマージンです。単位はcm, mm, pt, in, mw(セルの大きさ)のいずれかを使用可能です。
デフォルトは1mwです。

例えば、以下の場合はバージョン10、エラー訂正レベルH、英数字モード、セルサイズ0.5mm、マージン1mmのQRコードを生成します。

<bc:barcode xmlns:bc="http://barcode4j.krysalis.org/ns"
 message="ENKODOSURUMOJIRETSU">
 <bc:qrcode>
 <bc:version>10</bc:version>
 <bc:encmode>M</bc:quiet-zone>
 <bc:ecc>H</bc:shape>
 <bc:module-width>0.5mm</bc:module-width>
 <bc:quiet-zone enabled="true">2mw</bc:quiet-zone>
 </bc:qrcode>
</bc:barcode>

ISBNコードについて

記述方法とデフォルト値は次のとおりです。
(ただし、バージョン2.0以前の各パラメータのデフォルト値はEAN-13(JAN-13)と同じになります。)

<bc:barcode>
  <bc:isbn>
    <height>{length:14mm}</height>
    <module-width>{length:0.33mm}</module-width>
    <quiet-zone enabled="{boolean:true}">{length:5mm}</quiet-zone>
    <checksum>{checksum-mode:auto=add|check}</checksum>
    <human-readable>
      <placement>{human-readable-placement:bottom}</placement>
      <font-name>{font-name:OCRB}</font-name>
      <font-size>{length:3.7mm}</font-size>
    </human-readable>
  </bc:isbn>
</bc:barcode>

再配布条件

Copper PDF バーコードプラグインは自由に配布することができます。
付属のライブラリについては、
copper-pdf/plugins/avalon-framework.LICENSE.txt
copper-pdf/plugins/barcode4j.LICENSE.txt
copper-pdf/plugins/Qrcode.LICENSE.txt
をお読みください。


PDF

Comments are closed.