PHPでImage_Barcode2を利用して、NW-7のバーコードを作る

概要

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);

?>

 

 

スポンサーリンク

Linuxphp

Posted by admin