ホームへ > Q&A一覧へ ユーザから「code128a, b, cの中から自動的に一番短くなるものを選ぶcode 128 Autoを使用してほしい」との依頼がありましたが、どういうことでしょうか?
ユーザから「code128a, b, cの中から自動的に一番短くなるものを選ぶcode 128 Autoを使用してほしい」との依頼がありましたが、どういうことでしょうか?
A: コード128の仕組みについて、簡単にご説明致します。

コード128は、スタートコードによってキャラクタセットを選ぶ形になっています。
キャラクタセット『C』は、1キャラクタが2桁の数字を表します。
数字が連続するデータであれば、スタートコード『C』を選ぶと、バーコード長を短くすることができます。そのかわり、アルファベットや記号はキャラクタ セットに含まれません。また、1桁の数字を表すこともできません。
そのため、バーコード生成アプリケーションの中には、データ内容が「数字のみ偶数」でないときは、スタートコード『A』や『B』をセットするものもあるようです。

しかし、キャラクタセットは、バーコードの途中で切り替えることもできます。スタートコード『C』で始まり、途中でコード『A]に切り替え、ということが可能です。

数字の連続で始まるバーコードであれば、スタートコード『C』で始めて、アルファベット部分で「コード『A』に切り替え」というキャラクタを入れることで、全体を短くすることができます。

例:『1234567890ABC』というデータをエンコードする場合:
1)スタートコード『A』でエンコードすると…16キャラクタ必要

1:スタートA
2:1
3:2
4:3
5:4
6:5
7:6
8:7
9:8
10:9
11:0
12:A
13:B
14:C
15:チェックキャラクタ
16:ストップコード

2)スタートコード『C』でエンコードすると…12キャラクタでOK

1:スタートC
2:12
3:34
4:56
5:78
6:90
7:コードAに切り替え
8:A
9:B
10:C
11:チェックキャラクタ
12:ストップコード

バーコード生成アプリケーションの中には、エンコードするデータ内容を解析して、バーコード長がもっとも短くなるスタートコードを自動で選択するモードを有するものがあります。
弊社取扱いのラベル作成ソフト『BarTender』でも、スタートコード『Auto』というモードがあります。
上記例のデータであれば、スタートコード『C』で始めて、アルファベット前に「コード『A』(または『B』)に切り替え」キャラクタを自動挿入します。

BarTebderについてはこちら