Linux のコマンドラインからバーコード画像を生成する方法についての記録です。
以前、職務の都合で Windows マシンからバーコードを生成してラベラーに出力することはしたことがありました。
今回は、Linux のコマンドラインからのバーコード生成が可能かどうか確認してみた次第です。
0. 前提条件
- Linux Mint 14 (64bit) での作業を想定。
- インストールするソフトは GNU Barcode というソフト。
- 今回は、ソースを取得後ビルドしてインストールする。(パッケージからのインストールしてもよい。)
- JANコード(13桁)、短JANコード(8桁)は、それぞれ EAN13, EAN8 であると認識しておく。
1. アーカイブファイルダウンロード
アーカイブファイルをダウンロードする。
今回は、当記事執筆時点で最新の Ver.0.99 をダウンロードする。(ただし、ページには beta 版である旨が記載される。問題があるようなら Ver.0.98 をダウンロードする。当方は、問題なかった。)
1
|
|
2. アーカイブファイル展開
ダウンロードしたアーカイブファイルを展開し、展開されたディレクトリ内へ移動する。
1 2 |
|
3. ビルド&インストール
以下のように、configure
, make
, make install
を行う。(よくある方法)
最後に一時ファイルを削除する。
1 2 3 4 |
|
4. インストール確認
GNU Barcode がインストールされたか、バージョンを表示して確認してみる。
1 2 3 4 5 6 7 8 |
|
5. バーコード画像生成
--help
オプション(実際は、存在しないオプションなら何でもよい)で、どのようなオプションが存在するのか、どのような種類のバーコードがサポートされているのか確認できる。
単純にバーコード画像(EPS 画像)を生成するなら、以下のようにすればよい。
-b
でバーコードを生成したい数字の文字列を指定する。
オプション -t 3x10
は A4 用紙を3行10列のテーブルとみなし、左上に描画するという意味。(余白を入れたければ -t 3x10+10+8
のように px 単位で追記する)
1
|
|
オプション -g 160x60
は A4 用紙の左下を基準にして、x軸方向に 160px, y軸方向に 60px の位置に描画する。(余白を入れたければ -g 160x60+20+10
のように px 単位で追記する)
1
|
|
一度に複数のバーコードを生成するなら -b
オプションを続けて指定する。
1
|
|
ちなみに、バーコード下の数字が小さく表示されるのは、チェックデジット(最後の1文字)が誤っているからであり、修正すれば数字が大きくなる。
1
|
|
また、生成される画像は EPS 形式(PS-Adobe-2.0形式)であるが、EPS 形式以外の形式にしたければ、画像処理ソフト ImageMagick の convert
コマンド等で適宜変換するとよい。
6. バーコード読み取りテスト
生成されたバーコードが正しいか、正しく読み取れるか、バーコードリーダ(もちろん、携帯端末搭載のものでも可)で実際に読み取ってみるとよい。正常に読み取れるはずである。
参考サイト
色々な規格のバーコードに対応していますが、ITF(日本国内の場合は 13 桁のJANコードに 1 桁の物流コードを付与した 14桁 で標準化されている)には(厳密には)対応していないようです。(生成されないことはないですが、チェックデジットが効かなかったりします。)
また、日本発祥の二次元バーコード「QRコード」も対応していないようです。
以上。