新闻资讯
在一些特殊的应用场合,使用在条码数据中插入控制符,能够快速的和应用程序结合,达到高效处理的能力。
像CODE 128,CODE 39E 类型都支持控制符号编码,比如换行<LF>、自动填表<HT>等。常用于管理系统特殊格式分割录入,也可以选择不常用的符号做加密防伪使用
常见控制符
十六进制代码 | 缩写 | DEC 多国字符名 |
00 | NUL | 空字符 |
01 | SOH | 标题起始 (Ctrl/A) |
02 | STX | 文本起始 (Ctrl/B) |
03 | ETX | 文本结束 (Ctrl/C) |
04 | EOT | 传输结束 (Ctrl/D) |
05 | ENQ | 询问 (Ctrl/E) |
06 | ACK | 认可 (Ctrl/F) |
07 | BEL | 铃 (Ctrl/G) |
08 | BS | 退格 (Ctrl/H) |
09 | HT | 水平制表符 (Ctrl/I) |
0A | LF | 换行 (Ctrl/J) |
0B | VT | 垂直制表符 (Ctrl/K) |
0C | FF | 换页 (Ctrl/L) |
0D | CR | 回车 (Ctrl/M) |
0E | SO | 移出 (Ctrl/N) |
0F | SI | 移入 (Ctrl/O) |
10 | DLE | 数据链接丢失 (Ctrl/P) |
11 | DC1 | 设备控制 1 (Ctrl/Q) |
12 | DC2 | 设备控制 2 (Ctrl/R) |
13 | DC3 | 设备控制 3 (Ctrl/S) |
14 | DC4 | 设备控制 4 (Ctrl/T) |
15 | NAK | 否定接受 (Ctrl/U) |
16 | SYN | 同步闲置符 (Ctrl/V) |
17 | ETB | 传输块结束 (Ctrl/W) |
18 | CAN | 取消 (Ctrl/X) |
19 | EM | 媒体结束 (Ctrl/Y) |
1A | SUB | 替换 (Ctrl/Z) |
1B | ESC | 换码符 |
1C | FS | 文件分隔符 |
1D | GS | 组分隔符 |
1E | RS | 记录分隔符 |
1F | US | 单位分隔符 |
20 | SP | 空格 |
一. 斑马 ZPL 指令打印含控制符的条码
例如最常见的,打印一个含有回车换行的QR条码。
我们查询上表可以看到回车符和换行符分别对应十六进制值0D ,0A
所以,只需要在我们ZPL 指令中输入^FH 指令,让它能够让打印机认识十六进制的字符
所以,下面这个就是一个包含回车换行的QR条码
^XA
^F0100,100
^BQN,2,5
^FH
^FDLA,1234_0D_0A5678^FS
^PQ1
^XZ
输出效果
其他控制符也类比,在条码内容中插入其他控制符。当然你也可以选择不同支持控制符的条码类型:例如CODE 128,CODE 39E , QR , PDF417
_04 -> <EOT>
_06 -> <ACK>
_09 -> <Tab>
_1D -> <GS>
_1E -> < RS>
_1F -> <US>
二. ZebraDesigner 3条码打印怎么插入控制符号?
在ZebraDesigner 3插入控制符操作如下(本文小编以插入控制符<Tab>及<CR>为例):
1、在ZebraDesigner 3中双击创建的条码,打开条码属性对话框,单击数据源选项卡,点击嵌入的数据源右侧的 “插入特殊字符”按钮。
2、在弹出的对话框中,选择“控制符”选项卡,找到要插入的控制符,单击插入即可。
3、单击关闭,控制符插入完成。
注意!ZebraDesigner在你点击应用后会隐藏控制字符。
但是在打印输出,我们可以看到生成的ZPL模板,已经自动添加了控制符
三. 条码扫描输出使用控制字符
Zebra 默认扫描枪解码后是不输出控制字符的。是“Disable FunctionKey Mapping”
所以扫描时我们需要通过工具123Scan才能看到
如果客户需要,可以扫描“Enable Function Key Mapping”条码设置
这样,如果条码中有回车换行控制符,扫描枪也会发生相同的控制指令
使输出有回车换行的效果。
例如:还是扫描刚才打印的条码
如果默认设置扫描到的数据是忽略控制符,输入在Execl 同一栏。
Disable Function Key Mapping
Enable Function Key Mapping
四. 扫描后控制符转换为明文输出
分析客户的需求,就是要将控制符转换为字符输出。
所以我们只需要用123Scan的 ADF高级扫描设置。
对控制符,<EOT>,<RS>,<GS>进行转换后输出:
我们选择“添加操作”,在操作中选择“至所有模式并替换”,然后选择对应的控制符<EOT>, 然后在更换框中输入对应的字符<EOT>,然后保存
这时候我们可以看到,我们已经成功添加了第一条操作。
对所有字符搜索替换一遍之后,
我们需要让处理记录点
移动到数据最前端
方便进行其他控制符的替换
喝口水,我们开始替换其他的控制符
<RS><GS>
在所有控制字符替换完成后,
我们需要让处理记录点
移动到数据最前端
然后将整个字符串发送出来
这个你就可以看到一个完整的
数据操作列表
这样我们就完成了一个ADF配置
我们可以选择:部署给扫描枪让设置生效即可
如下就是我们今天生产成的配置码。