ZPL 编程 - 打印带有“每个标签后暂停”的标签

Posted

技术标签:

【中文标题】ZPL 编程 - 打印带有“每个标签后暂停”的标签【英文标题】:ZPL Programming - Print labels with "pause after every label" 【发布时间】:2018-08-07 11:58:24 【问题描述】:

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

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

迄今为止,我已将 Zebra GX430t 手册 (^XA^MMP^XZ^XA^JUS^XZ) 中所述的两行 ZPL 编程输入到打印首选项 > 自定义命令中。当直接从调酒师打印时,这是可行的。但是,当从我们的自定义构建界面(使用 C# 开发)打印时,它不起作用。

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

【问题讨论】:

如果您可以提供 c# 代码,那可能会很有用。一个问题,这与英国切尔滕纳姆的 Morans 有什么关系吗? 【参考方案1】:

看着documentation for ZPL,

^XA^MMP^XZ

打印模式设置为剥离,并且

^XA^JUS^XZ

只需将当前设置保存到 EEPROM,以便它们在断电后仍然存在。

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

如果没有看到该软件的源代码,很难说出更有用的信息。但是,我怀疑您的第三方软件是在没有考虑 ZPL 的完整范围的情况下编写和测试的,并且正在剥离或以其他方式munging 数据,因此您的设备无法再正确解释它。

【讨论】:

嗨,下面的代码是我们尝试过的最新版本的代码。 ` public ActionResult PrintDocument(PrintViewModel model) if (ModelState.IsValid) using (var engine = new engine (true)) LabelFormatDocument format = engine.Documents.Open(model SelectedDocument);格式.PageSetup.MediaHandling.Action = MediaHandlingActions.WaitForLabelTakenSensor; format.PageSetUp.MediaHandling.Occurence = MediaHandlingOccurance.AfterEveryPage; `等等【参考方案2】:

在您的comment 到@Jodrell 的回答中,我可以看到您正在尝试设置标签模板的 MediaHandling,并且您提到您已经输入了 ZPL 编程的两行在 Zebra GX430t 手册中进入打印首选项 > 自定义命令。当直接从调酒师打印时,这可以工作,但不能从 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

【讨论】:

您好 Jordell,是的,我们能够通过更改驱动程序设置来实现此功能。感谢您的回复。

以上是关于ZPL 编程 - 打印带有“每个标签后暂停”的标签的主要内容,如果未能解决你的问题,请参考以下文章

从 ZPL(斑马编程语言)翻译成 IPL(Intermec 编程语言)

如何在垂直标签中垂直打印zpl条码

如何从托管站点在本地ZPL打印机中打印标签?

使 ZPL 标签中的文本加粗或加下划线?

将 PNG 图像转换为 ZPL 代码

ZPL - 条形码打印时缺少数字