【问题标题】:ZEBRA ZPL label formats prints quotations along with textZEBRA ZPL 标签格式与文本一起打印报价单
【发布时间】:2021-09-29 15:38:44
【问题描述】:

在我们的空间中,我们使用 ACUCOBOL-GT 编写的程序,它将诸如 PHY NAME 之类的变量推送到书面格式。然后,该程序将所述 PHY NAME 替换为药房的实际名称,然后 cups 将数据推送到标签上,产生可读的输出。我们使用带有 EPL 书面标签格式的斑马打印机打印出这些药房药物标签。

最近我使用 ZPL 编写了一个格式来生成与我能够比使用旧 EPL 更好地自定义数据的标签。

我遇到的唯一问题是,现在使用 ZPL,数据会打印到引号之间的标签上。

因此,它不是例如 Montagu Pharmacy,而是打印为“Montagu Pharmacy”。

旧 EPL 代码示例如下:PHY NAME A010,025,0,4,1,1,N,

上述代码的输出如下:A010,025,0,4,1,1,N,"MONTAGU PHARMACY"

在打印前的输出中也会显示引号,但是一旦将其发送到打印机,它就会删除引号并在没有引号的情况下打印。

这是 ZPL 代码的示例:PHY NAME ^FO100,025,0^A0N,18,30^FD

这里是上述代码的输出:PHY NAME ^FO100,025,0^A0N,18,30^FD"Montagu Pharmacy"

在打印之前在输出上显示引号,当它打印到标签上时,它会打印文本和引号。

我了解 ACUCOBOL-GT 程序使用引用创建数据,但 EPL 从未将它们打印出来,但 ZPL 会。

有什么我做错了,或者我可以做些什么来删除引号,以便它可以像以前一样正常打印出来。

非常感谢任何帮助。

亲切的问候

汉斯·斯泰因

【问题讨论】:

    标签: zpl


    【解决方案1】:

    这是因为在 EPL 中要打印的 "DATA" 被引号包围("),而在 ZPL 中则不是,所以会打印引号。您需要按如下方式删除引号:

    PHY NAME ^FO100,025,0^A0N,18,30^FDMontagu Pharmacy
    

    参考资料:

    EPL (A 命令)
    https://www.servopack.de/support/zebra/EPL2_Manual.pdf
    第 41 页

    ZPL (^FD 命令)
    https://www.zebra.com/content/dam/zebra/manuals/printers/common/programming/zpl-zbi2-pm-en.pdf
    第 172 页

    编辑 1
    根据您的评论,AFAIK 无法在命令到达打印机之后删除引号 。因此,唯一的方法是让您的供应商的软件将命令发送到您拥有的一些自定义工具/软件,这些工具/软件将去除报价,然后将消息传递给打印机。

    [supplier software] -> [custom software] -> [Printer]
    

    我不知道他们的软件,但他们可以生成一个文本文件,您的自定义工具将加载并删除引号,例如使用这样的正则表达式,甚至允许在名称中间使用转义引号(如果有)是任何(箭头):

    话虽如此,令人惊讶的是,删除引号需要大量开发,尤其是因为它们似乎已经能够生成 EPL 和 ZPL。

    【讨论】:

    • 不幸的是,发送代码的程序是硬编码的,需要拥有它的公司进行大规模开发,他们不会更改它,因为那里有任何客户仍在使用 EPL。那么有没有其他方法可以在这些引号到达打印机之前将其删除?
    猜你喜欢
    • 2023-03-19
    • 1970-01-01
    • 1970-01-01
    • 2017-04-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多