昨年、ライセンスを購入させていただいた者です。
よろしくお願いします。
ITFコードのチェックデジットについて、生成される値が異なるとの指摘をユーザー様より戴きました。
チェックデジット計算方式 |JANコード登録│ 財団法人 流通システム開発センター
http://www.dsri.jp/jan/check_digit.htm
にあるフォームで、ページ下部にあるサンプル値「1456995111617」を入れるとチェックデジットは「6」になるのですが、
BarCode.php バーコードをブラウザに出力するサンプル
http://www.pao.ac/~barcode.php/sample/browser_barcode.php
に入れてITFを選択すると「7」になります。
http://www.pao.ac/~barcode.php/sample/draw_browser_barcode.php?kind=itf&code=1456995111617&x=20&y=20&minWidthDot=1&height=100&dispStartStopCode=&rotateAngle=0&submit=Submit
お手数ですがご確認いただけますでしょうか。
何卒よろしくお願いします。
申し訳ございません。
ご迷惑衣をおかけしております。
不具合改修したITF.php のをメールでお送りさせていただきました。
近日中に正式リリースいたします。
以下、Barcode.phpにおけるITF の仕様について記述させていただきます。
・チェックディジットは付与しません。
Jan13 と違い、ITFは、チェックデジット必須ではないと認識しております。
従って、チェックディジットは、お客様が付与する必要がございます。
ただし、Barcode.php には、いくつかチェックディジット計算functionを内蔵しており、
その中の一つに、お客様ご希望であるモジュラス10ウェイト3のチェックディジットを
計算するfunctionがございます。
Jan13 を参考に以下のような感じでお使いください。
----------
$codeAll = $code . modulus10W3(substr($code, 0, 12));
----------
・なぜ?最後に「7」が付与されたか?
不具合でございました。
ITFは、桁数が偶数でなければならない仕様だと認識しております。
そこで、弊社の他のBarcodeライブラリ・ツールでは、桁数が奇数の場合、
頭に"0"を付与する仕組みになっております。
これは、仕様でございます。通常のITFの仕様であると認識しております。
そこで今回、その不具合にのみ対応させていただきました。
改めて書きますと、「ITFコード桁数が奇数の場合先頭に"0"を付与する」
仕様通りに不具合を改修いたしました。
長くなりました。以上でございます。
何卒よろしくお願いいたします。
迅速なご回答ありがとうございました。
ご回答内容了解いたしました。
今後ともよろしくお願いします。
- YY-BOARD -