我正在ZPL中创建GS1 DataBar扩展条形码,但我找不到对FNC1字符进行编码以终止可变长度GS1应用程序标识符(GS1 AI(的方法。
老实说,这不是必须的。GS1 DataBar主要用于新鲜食品和其他杂货,到目前为止,我注意到只有一个可变长度的GS1 AI(10批次/批次(可以定期使用。虽然我没有做任何研究,所以也许我错了。
尽管如此,我还是想到了是否有可能在ZPL中插入FNC1字符。在其他编程语言中,可以包含它,但我在ZPL方面运气不佳。GS1DataBar似乎不能很好地使用十六进制命令。当我使用十六进制组分隔符(GS;ASCII值29(字符_1D
时,它甚至没有呈现代码。其他FNC1转义序列,如来自GS1数据矩阵的_1
或来自GS1-128的>8
,如预期的那样不起作用。
我在Zebra支持上找到了这个答案,但它没有在Labelary ZPL查看器上呈现,所以我不确定它是否有效。我尝试直接包含#
字符并使用十六进制字符,但没有成功。
我的ZPL代码:
^XA
^FO100,100^BRN,6,4,,,6
^FD010858000000000931030001251722022210ABC123^FS
^XZ
我想知道的是,例如,如何在代码末尾的批次AI(10(之后包含序列号AI(21(。
根据本文档,必须在字段开头输入#
字符,以表示第一个位置的隐含FNC1。
因此,对于GS1应用程序标识符数据:
GTIN (01) 08580000000009
NET WEIGHT (kg) (3103) 000125
USE BY or EXPIRY (17) 220222
BATCH/LOT (10) ABC123 <--- FNC1 required
SERIAL (21) 000123
你会有以下ZPL:
^XA
^FO100,100
^BRN,6,4,,,6
^FD#010858000000000931030001251722022210ABC123#21000123^FS
^XZ