ZPL - 条形码打印时丢失数字

Mik*_*ike 5 label barcode zpl zebra-printers barcode-printing

我正在尝试使用以下ZPL和Zebra ZP 450打印机在标签上打印Code 128条形码:

^BY3^BCN,112,N^FO090,660^FD>;>89102100^FS
Run Code Online (Sandbox Code Playgroud)

我期待条形码扫描为"9102100".但是,当我扫描打印的条形码时,它显示为"910210" - 切断最后一位数字.

如果我更改了最后一位数字,它仍然会被切断.但如果我在末尾添加更多数字,例如"9102100357",则条形码正确读取为"9102100357".

为什么我在这种特殊情况下"失去"一个数字?

Ovi*_*ler 10

块的>;内部^FD告诉代码128条形码进入子集(在这种情况下为子集C),这迫使条形码中的数据为数字对(00-99).任何未以数字对提供的数据都将被忽略.如果你在那里写了一封信,它就会忽略那一对.在你的情况下9102100有一个奇数的数字,所以它忽略了最后一个.例如,如果您添加另一个0,它会将所有字母放在条形码中.

;>这把条形码在子集C是不是默认.子集B或是:>默认值,允许在条形码中编码任何字符.所以,你可以替换;>使用:>,或只是删除了;>全部,它会正常打印出来.

^BC有关Code 128子集和数据验证的更多信息,请查看ZPL编程手册中的文档