【问题标题】:How to get label size from Zebra label printer如何从 Zebra 标签打印机获取标签尺寸
【发布时间】:2021-01-05 08:17:58
【问题描述】:

我有一个 MVC Web 应用程序,我需要在 Zebra GK420t 标签打印机上使用 ZPL 语言打印各种标签。我们在不同的房间里有几台打印机,有些打印机纵向使用标签,而其他打印机横向使用标签。

有没有人碰巧知道,如果有一种方法可以将当前加载的标签的尺寸从给定的打印机读取到我的 c#-app 中?然后app可以根据不同的标签尺寸调整打印布局。

谢谢!

【问题讨论】:

  • 这不应该是一个 Javascript 问题吗?如果答案不是“否”,我会感到惊讶。或者 ASP.NET 应用程序是否提供对打印机的访问(即服务器拥有打印机,人们通过您的服务器打印到这些打印机)?
  • 也许应该(我对编程还是很陌生)...目前我已经制作了一个小型打印帮助应用程序,它在 Windows 登录时本地运行。然后它通过 WebAPI 从 Web 服务器获取用户的打印作业。所以我假设这个帮助应用程序可以从连接的打印机获取信息(如果可能的话)?
  • 是的,帮助应用程序需要反馈该信息。很久没玩 Zebra 打印机了,但我觉得你需要加载当前的纸张尺寸。
  • 好的,谢谢。我不知道该怎么做。但也许 System.Drawing.Printing-namespace 中的某些东西会起作用,或者您是否有任何可以通过的特定方向点?否则还是谢谢。

标签: c# asp.net-mvc printing zpl


【解决方案1】:

通常您需要在发送打印作业之前知道要打印的标签尺寸。您可能希望专门查看 SGD 命令中的 ZPL Manual。您可以使用以下方法查询打印机的标签长度​​:

! U1 getvar "zpl.label_length"

但是,如果标签长度以编程方式设置为不正确的值,我认为您可能会得到错误的值。我不相信有相应的宽度命令。

这假定打印机与您的客户端或 Web 服务器位于同一网络上,具体取决于您决定如何查询打印机。

【讨论】:

  • 感谢您的建议。我一直在寻找这样的东西。我会努力让它工作并报告回来。谢谢。
  • @Nielsen 想知道,建议的答案对您有什么帮助吗? SGD 命令有用吗?
  • @Coder Absolute,抱歉我的回复晚了!我没有找到如何从打印机“即时”读取确切的标签尺寸,所以我最终读取了您可以在 Windows 打印机设置中键入的标签尺寸。然后我从以下位置读取这些值: PrintDialog in c#。它在我的设置中有效,但如果您没有通过 Windows 打印机设置手动输入正确的标签尺寸,它将不起作用。所以只有次优的解决方案。
猜你喜欢
  • 2016-01-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多