通过iPad打印PDF的热敏收据打印机



我已经寻找了很长一段时间,还没有找到合适的解决方案。

设置

我有一个基于云的系统,它允许基于票务的许多事情,并为这些事情生成PDF收据。这些PDF目前由用户通过浏览器打印对话框调出并打印到各种不同的热敏打印机(无端卷,80毫米宽)。这没有问题。总结如下:

  • 基于云的票务系统等
  • 生成PDF票证,80毫米宽,每页设置高度(摘要可以跨越两页,而只使用第二页的一部分)
  • 系统对话框打印到200毫米页面高度的热敏收据打印机
  • 目前我还没有能力为这种类型的打印实现任何打印机SDK,因为我们的应用程序是基于云的

下一步

我们收到了允许iPad和其他平板电脑或移动设备使用此功能的请求。经过研究,iOS现在需要支持AirPrint的打印机才能打印到WiFi网络打印机,而Android则需要谷歌云打印。我已经摆脱了最初的烦恼,因为这个过程比使用笔记本电脑要困难得多,而且我现在对Android选项并不特别在意(客户端使用iOS)。

从这里开始,我在笔记本电脑上安装了Collobos Presto,它基本上为选定的打印机提供了第三方AirPrint服务器。我现在可以从iOS打印到打印机,但当使用Star TSP100-LAN时,它连接到我们的局域网,并由该网络上的计算机无线提供。这里的问题是,票证的顶部和左侧有大约1英寸的边距,它可以按预期从计算机打印出来使用Star TSP100-LAN,我的纸张高度必须设置为200mm才能正确打印。尽管我的PDF票证可能是两页,第二页几乎完全空了,但打印机正确地假设了页面的末尾。我们的其他一些客户正在使用Advanpos收据打印机,该打印机也可以正确检测此空白。

由于缺乏iOS打印选项(例如适合页面、可能的页边空白等),我更加沮丧。我在Presto中尝试了一些不同的设置,但没有更改,Presto支持建议我买一台Zebra打印机。我已经获得了一个斑马QL420+进行评估,它具有WiFi和蓝牙连接以及USB。这是从笔记本电脑打印的,但页面大小有问题使用Zebra QL420+,它不会检测到页面的末尾。当启用"适合页面"时,它可以正确打印,但严格遵守200毫米的页面高度,Star打印机检测到文档的末尾并完成打印。

Star TSP100-LAN

  • I可以通过LAN从计算机正确打印到Star TSP100-LAN
  • 可以通过安装在计算机上的WiFi/Presto软件从iPad打印到此打印机,但有1英寸的空白
  • 无法从Android打印到此打印机

斑马QL420+

  • I可以通过USB从计算机打印到Zebra QL420+,但它无法检测到第二页的末尾,并提供空白纸张
  • 我可以从Android通过蓝牙连接到Zebra QL420+,但无法在Chrome浏览器窗口中打开PDF进行打印(它会下载它,可能是我这边的开发问题),因此无法打印到它
  • 我在iOS上根本无法通过蓝牙检测到Zebra QL420+

我的问题

有人有这类问题的经验吗?有什么建议吗?一天下来,我希望能够通过我的网络应用程序生成PDF收据,并能够从iPad/其他无线平板电脑打印到中央热敏收据打印机。目前可以通过笔记本电脑无线完成这项工作(通过Star TSP100-LAN有线连接),但不能始终通过平板电脑。

在Star的情况下,这与我如何在笔记本电脑->Presto->iPad链上设置打印机有关吗?生成PDF时是否存在边距问题?

我考虑过的一个解决办法是通过iPad创建所有的票证等,然后在打印机旁边的中央计算机上查找它们以进行打印,但我相信,在今天这样的现代技术时代,一定有一种方法可以在不需要这一步的情况下实现这一点。

感谢您的帮助,我可能会在两天后悬赏。

编辑

通过调整页面宽度,Zebra打印机可以通过WiFi正确响应。它要求PDF页面的长度为文档的整个长度,否则它将在第二页填充空格。使用TCPDF,我们无法让高度是自动的,它似乎需要一个预设的数字,这就是为什么我们过去有这个程序的原因。将对此进行单独调查。

当我将页面宽度减小到应有的值时,Star打印机的利润率变得更大了。

页边空白问题可能是由PDF页面大小与打印机纸张大小和打印宽度不匹配引起的。QL420+可以通过蓝牙与Android通信,但不能与iOS通信(因为QL420+没有MFi)。QL420+可以通过WiFi与iOS和Android进行通信。Zebra iMZ打印机可以通过蓝牙与iOS和Android进行通信。您可能需要考虑将Zebra SDK集成到您的应用程序中,然后使用它将PDF打印到QL420+。另一种选择是使用一个应用程序来处理从centvia等这些类型的设备进行打印。

这里有几个变量:打印机(包括品牌/型号)、通信类型(局域网、蓝牙)和应用程序平台(iPad、Android、笔记本电脑);这将有助于减少变量。它看起来不需要对笔记本电脑进行任何更改,因为它对您有效。对于iPad和Android,如果变量无法减少,那么生成PDF并通过这些制造商或第三方提供的内容打印是唯一的选择。页面大小、缩小和/或裁剪文档(典型的收据打印机分辨率为200 dpi)以及打印时间相对较长(尤其是在使用蓝牙时)可能会出现问题和挑战(因为文档图像被发送到打印机);这里没有告诉你任何新的东西,你已经看到了其中的一些问题。

如果可以减少变量,例如选择一种与您需要的通信类型和您想要打印的平台兼容的打印机品牌/型号,问题和挑战就会减少。如果您将打印机制造商缩小到一个制造商,您可能还需要考虑用您选择的打印机的语言生成收据(而不是创建PDF,将PDF发送到客户端,在某个地方使用一些驱动程序缩小文档或裁剪文档,然后将更改文档的图像发送到打印机进行打印);它将减少打印时间,并将避免缩放、页面大小和边距问题。

如果你最终将变量减少到Zebra打印机,并用他们的语言呈现收据,那么看看centvia并联系他们,看看他们是否有适合你的解决方案。

最新更新