概要
PHPでNW-7のバーコードを作成したいとの要望があり、Image_Barcode2を利用してバーコードを作成しました。
まずは、PEARのImage_Barcode2をインストールして、その後「NW-7」を利用できるようにします
PEARでImage_Barcode2をインストールする
PEARを利用して、「Image_Barcode2」をインストールします。
# Image_Barcode2 をインストールします $ sudo pear install Image_Barcode2 Failed to download pear/Image_Barcode2 within preferred state "stable", latest release is version 0.2.3, stability "beta", use "channel://pear.php.net/Image_Barcode2-0.2.3" to install install failed # 安定版をインストールするように言われるので、安定版をインストールします $ sudo pear install channel://pear.php.net/Image_Barcode2-0.2.3 # インストール確認されているか確認します $ sudo pear list Installed packages, channel pear.php.net: ========================================= Package Version State Archive_Tar 1.3.7 stable Console_Getopt 1.2.3 stable Image_Barcode2 0.2.3 beta PEAR 1.9.4 stable Structures_Graph 1.0.4 stable XML_RPC 1.5.4 stable XML_Util 1.2.1 stable
Image_Barcode2 にNW-7を追加します
標準ではNW-7が含まれていないので追加します。追加作業は下記のサイトで紹介されている内容を参考しています。
参考URL:賢者の漬け物石: PHP で NW-7 バーコード画像を生成する
Barcode2.php ファイルが探して、そのファイルに BARCODE_NW7 を追加します
# Barcode2.phpのファイルの場所を探すため、ファイル一覧データベースを更新します
$ sudo updatedb
# locateコマンドで、Barcode2.phpを場所を検索します
$ sudo locate Barcode2.php
/usr/share/pear/Image/Barcode2.php
# Barcode2.phpを編集して「const BARCODE_NW7 = 'nw7';」を追加します
$ sudo vi /usr/share/pear/Image/Barcode2.php
/**
* Barcode type
*/
const BARCODE_NW7 = 'nw7';
NW-7 用のドライバーファイルをダウンロードして配置します
# NW-7のドライバーを配置する箇所に移動します $ sudo cd /usr/share/pear/Image/Barcode2/Driver # wget でドライバーファイルをダウンロードします $ sudo wget http://k-ishik.up.seesaa.net/data/Nw7.php # 「Nw7.php」のファイルがあるか確認します $ ls | grep Nw7 Nw7.php
Image_Barcode2を利用してPHPでバーコード作成
PHPで利用して下記のような、NW-7のバーコードを作成します。

PHPでNW-7のバーコードを表示するには以下のようなコードでバーコードが作成されます
<?php
require 'Image/Barcode2.php';
// 画面に描画
$code = new Image_Barcode2();
$code->draw('a01234567b', 'nw7');
?>
PHPでバーコードを画像として保存する場合は以下のようなコードになります
<?php
require 'Image/Barcode2.php';
$filename = 'barcode.gif';
$filepath = '/var/www/html/image/barcode/';
//ファイルに保存
$code = new Image_Barcode2();
$code = Image_Barcode2::draw('a01234567b', 'nw7', 'gif', false);
imagegif($code,$filepath. $filename);
?>


コメント