Nullyのぶろぐ

仙台で働くエンジニアの日記

1.10から追加されるいくつかのクラスを試してみた

Zend Framework 1.10のリリースがそろそろのようです。

Zend Framework 1.10.0alpha1 Released

まだalpha版ですが、1.10より追加される面白そうなクラスを見つけたので紹介。

今回紹介するのは Zend_Barcodeクラスで、2次元バーコードを生成するものらしいです。

※紹介するクラスの利用利点は今のところ不明です

サポートバーコード

サポートされている2次元バーコードは以下の通り

  • CODE25
  • CODE39
  • INT25
  • IFT14

の4つらしいです。

これらの仕様

それぞれの仕様らしいものは以下に。

ということらしいです。

奥が深いですね!

ちなみにITF-16は日本のみで利用できるJANコードの1種らしいです。

拡張するの好きだな...w

使ってみた

実際に使ってみました。

使い方は以下のとおりです。

$code25 = Zend_Barcode::factory("Code25", "image", array(

"text" => "1234567890", array()

);

$code25->render();

これはCODE25を利用する例です。

引数は順に、「利用するバーコードクラス名」、「吐き出す形式」、「バーコードクラスに渡す引数」、「吐き出しクラスに渡す引数」です。

利用するバーコードクラスは上で上げた利用できるバーコードの種類のみです(Uppercaseで書いておくと良いかもです)。

吐き出す形式は、「image」及び「pdf」です。

恐らく利用率が高いのはPDFだと思います。

バーコードクラスに渡す引数は「ZendBarcode/Object」、吐き出しクラスに渡す引数は「Zend/Barcode.Renderer/」にあるそれぞれのクラスを参照してください。

吐き出してみた

実際に画像を吐き出してみました。

CODE25

CODE39

INT25

ITF14

使った文字は「Nully」というTwitterアカウントです。

CODE25とINT25の数字については、「Nully」をバラして、個々を数値にしたものをつなげただけですごめんなさい。

感想

いまいち使いどころが分かりませんが、多分PDFなどに貼りつけて、業者に送付したり、卸業者さんはITF14のJANコードをWeb上で管理したりという場合に使うのかもしれません。

PDFを利用する際は鯖に不可が結構かかるので注意が必要かもしれないですが、Fontのパース結果さえZend_Cacheとかでキャッシュしておけばいいのかなぁと。

多分私個人では使わないかもです...。