ZPL ^FC的时间戳在作业接收时计算,而不是在标签打印时计算(Zebra ZT420剥离模式)
我正在使用ZPL在 Zebra ZT420(203 dpi)上打印标签。
打印机配置在 剥离模式(出纸器),因此它先打印一个标签,等操作员取走后再打印下一个。
我使用打印机时钟来打印时间戳:
^FC
^FDSTAMPATO: %d/%m/%Y %H:%M:%S^FS
如果我发送一个包含两个标签的作业:
^XA
...
^FC
^FDSTAMPATO: %d/%m/%Y %H:%M:%S^FS
^PQ2
^XZ
这两个标签得到的是相同的时间戳,即使在取下第一张和打印第二张之间经过数秒。
示例输出:
PRINTED: 16/03/2026 17:32:10
PRINTED: 16/03/2026 17:32:10
看来打印机在接收到作业时就对 ^FC 进行评估,一次性,而不是在每张标签打印时重新评估。
问题
在ZPL中是否有办法强制打印机对每张标签重新评估时钟,以便每张打印的标签都反映实际打印时间?
或者说只有将每次打印一个标签的作业才是唯一的解决方案?
打印机详情
- Zebra ZT420
- 203 dpi
- 固件:Link-OS V75.20.10Z
- 已启用剥离模式
- 已启用实时时钟
解决方案
^SL – 设置模式和语言(用于实时时钟)
取值:
S = 开始时间模式。当标签格式化开始时(收到 ^XA),将从实时时钟读取此时间。第一张标签的时间与最后一张标签相同。
T = 现在时间模式。当将要打印的标签放入打印队列时,从实时时钟读取此时间。现在时间类似于一个序列化的时间或日期字段。
数值:使用增强型实时时钟(V60.13.0.10或更高版本)时,可以指定时间精度容差。范围 = 1到 999秒,0 = 1秒容差。示例:SL30,1 = 容差为30秒并使用英文。
默认值是 ^SLS,尽管这也可能在60秒后更新时间戳。我还没有尝试过这个(从未使用过剥离模式),但它可能对你有用。
站内所有文章版权归属LeftHeroAI导航站,无授权禁止任何主体转载、抄袭、复制内容,亦不得私自架设镜像站点。一经侵权,本站将通过法律途径追责。