首页 文章

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

提问于
浏览
5

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

^BY3^BCN,112,N^FO090,660^FD>;>89102100^FS

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

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

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

2 回答

  • 9

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

    将条形码放在子集C中的 ;> 不是默认值 . 子集B或 :> 是默认值,允许在条形码中编码任何字符 . 所以你可以用 :> 替换 ;> ,或者只是完全删除 ;> ,它会正确打印出来 .

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

  • 0

    https://www.zebra.com/content/dam/zebra/manuals/en-us/software/zpl-zbi2-pm-en.pdf第83页

    此问题可能已在固件更新中修复,请参阅下文

    “例3:这是模式参数设置为D *的示例:^ XA ^ PON ^ LH0,0 ^ BY2,2.5,145 ^ FO218,343 ^ BCB ,, Y,N,N,D ^ FD(91 )0005886> 8(10)0000410549> 8(99)05 ^ FS ^ XZ D * - 当尝试使用奇数个字符打印最后一个应用程序标识符时,使用模式D打印EAN128条形码时出现问题 . 已在固件版本V60.13.0.6中修复 . “

相关问题