ZPL 编程 - 使用"pause after every label"打印标签



我们使用ZEBRA GX430t打印机、调酒师和第三方自定义界面打印。

我们需要的是更改打印设置,以便能够在每个标签后暂停打印我们的标签(例如,标签打印,当用户移除时,打印机传感器会拾取并分配队列中的下一个标签,依此类推(

到目前为止,我已将Zebra GX430t手册(^XA^MMP^XZ^XA^JUS^XZ(上ZPL编程的两行输入到打印首选项>自定义命令中。当直接从调酒师那里打印时,这是有效的。然而,当从我们的自定义界面(使用C#开发(打印时,它不起作用。

任何关于如何通过自定义打印界面使其发挥作用的支持/解决方案都将很有帮助。

查看ZPL、的文档

^XA^MMP^XZ

打印模式设置为剥离,然后

^XA^JUS^XZ

只需将当前设置保存到EEPROM中,以便在断电后保持不变。

假设这个输入来自BarTender,我们可以假设它是一个有效的命令。因此,毫不奇怪,我们知道问题出在使用C#开发的自定义软件上。

如果没有看到软件的源代码,就很难说出更有用的东西。然而,我怀疑您的第三方软件是在没有考虑ZPL的全部范围的情况下编写和测试的,并且正在剥离或以其他方式篡改数据,使您的设备无法再正确解释数据。

在您对@Jodrell答案的评论中,我可以看到您正试图设置标签模板的MediaHandling,并且您提到您已将Zebra GX430t手册上ZPL编程的两行输入到打印首选项>自定义命令中。当直接从调酒师打印时,这是有效的,但不能从C#打印。

我怀疑您的C#代码正在覆盖打印机自定义命令。

public ActionResult PrintDocument(PrintViewModel model) 
{ 
if (ModelState.IsValid) 
{ 
using (var engine = new engine (true)) 
{ 
LabelFormatDocument format = engine.Documents.Open(model SelectedDocument); 
format.PageSetup.MediaHandling.Action = MediaHandlingActions.WaitForLabelTakenSensor; 
format.PageSetUp.MediaHandling.Occurence = MediaHandlingOccurance.AfterEveryPage;
}
}
}

您可以尝试将MediaHandlingAction设置为DriverSettings吗?

删除WaitForLabelTakenSensorAfterEveryPage,然后确保您的打印机具有这两行自定义命令。

format.PageSetup.MediaHandling.Action = MediaHandlingActions.DriverSettings

相关内容

  • 没有找到相关文章

最新更新