php (EC-CUBE) コンビニ (料金代理収納)等のバーコードUCC/EAN-128をpdfで出力する


コンビニ(郵便局)収納代行用のバーコードは非常に高密でシビアなバーコードです
さらに一般によく使われている code128のフォントでは出力できません
一番簡単な方法があったのでメモです
使うのは FPDFと PEAR Image_Barcode2です
Image_Barcode2をすこし改造します
変更箇所は

Barcode2.php を修正

const BARCODE_CODE128C = ‘code128c’; の行を追加する

code128c.php を以下の内容で作成する

使い方
fpdfから

2 thoughts on “php (EC-CUBE) コンビニ (料金代理収納)等のバーコードUCC/EAN-128をpdfで出力する”

  1. 初めまして
    当方、費用をかけずにGS1-128のバーコードを出力できないか?と色々探していて非常助かる情報で参考にさせいただきました。
    常識的なことかもしれませんが、わからない点があったので助けていただけますか?
    draw($barcode,箇所で{fnc1}を指定する場合、$barcodeにどのように値を設定したらよろしいでしょか?
    お手数をおかけしますが、よろしくおねがいいたします。

    1. code128c.phpのなかで

      public $_FNC = 102;

      //FNC1追加
      if($this->_FNC > 0 ){
      $charcnt=1;
      $allbars .= $this->_codingmap[$this->_FNC];//FNC1
      $val = $this->_FNC;
      $checksum += ($val * ($charcnt));
      }
      とあるので、自動で頭についてるかもです。
      途中とかに挿入する必要があれば
      code128c.php の
      private function _getCharCode($cno)
      {
      //return $this->_codingmap[ord($char) – 32];
      return $this->_codingmap[intval($cno)];
      }

      {
      //return $this->_codingmap[ord($char) – 32];
      if($char==’GS’){
      return 102;
      }
      return $this->_codingmap[intval($cno)];
      }

      とかにして、挿入したい場所に”GS”を入れるとか・・・。
      そうすると、チェックサムとかどうなるか不明。
      別々に作って並べるといいのかな?
      と不確定なことばかりですみません。
      ちなみにcode128cは2文字ずつ見て変換していきます

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です