哪个不应该包含在这个ZPL代码中?

时间:2012-11-12 06:58:41

标签: zebra-printers zpl zpl-ii

我正在开发一款需要打印到Zebra打印机的Windows Mobile App。问题是,我的国家/地区没有打印机,因为客户端没有提供任何打印机。

我的方法是先在ZebraDesigner2中设计一个标签,然后将标签打印成文本文件。将标签打印到文本文件而不是打印机会发出ZPL代码以生成我试图打印的标签。因此,我可以通过首先设计标签然后查看ZPL代码来更快地生成ZPL代码。有点像使用带有背景XML的拖放GUI。

假设我有这个包含此文本的简单标签: Hello World! 如果我在ZebraDesigner2中打印它,它将被写入我的文本文件:

CT~~CD,~CC^~CT~
^XA~TA000~JSN^LT0^MNW^MTT^PON^PMN^LH0,0^JMA^PR5,5~SD15^JUS^LRN^CI0^XZ
^XA
^MMT
^PW609
^LL0406
^LS0
^FT1,29^A0N,28,28^FH\^FDHello World!^FS
^PQ1,0,1,Y^XZ

我的主要问题是,如果我要通过Windows Mobile C#app将此代码发送到打印机,我将在C#代码中包含哪一个?我是否将^ XA包含在^ XZ中?我相信CT ~~ CD,~CC ^ ~CT~不应该包含在我的代码中如果我没有弄错。

2 个答案:

答案 0 :(得分:1)

迟到的回答,但是因为这个被查看了......

CT线和第一组XA..XZ序列设置模式,标签长度,可打印区域等。

如果删除它们,它将从标签/打印机设置中获取这些设置,这通常是您想要的。打印机可以感知标签的长度和宽度。

离开它们会导致很大的问题,因为如果您在标签中定义可打印区域,然后提交的下一个标签类型没有,它将使用您定义的设置 - 这可能会导致标签中出现空白区域,例如。切断USPS标签在Zebra Designer自定义标签后打印的条形码。

发现这一点很困难 - 把它们排除在外,你应该省去剩余的XA..XZ序列MMT,PW609,LL0406和LS0 - 你的Hello World不会受到影响。

如果您确实要限制打印区域,在可打印区域内设置边距等,请参阅手册。

答案 1 :(得分:0)

在删除任何代码之前,你必须先查看程序员guid。例如,CT~命令会更改控制前缀。

在互联网或zebra.com网站上搜索“ZPL编程指南”。

因此,保留文本文件,然后将其包含在Windows移动应用程序中。

PS:zebra为标签/收据打印机提供SDK:http://www.zebra.com/gb/en/products-services/software/adapt-software.html

PS2:没有测试打印机,你可能会得到糟糕的最终结果。

〜约瑟夫