【问题标题】:Why Does "Port 9100" Printing Multi-Page PDF Cause HP 4515 to Pause Between Pages?为什么“端口 9100”打印多页 PDF 会导致 HP 4515 在页面之间暂停?
【发布时间】:2012-11-27 23:09:57
【问题描述】:

我每天创建数千个 PDF 文件,并使用带有 Prawn 的 Ruby on Rails 应用程序在一组 HP-4515 打印机上打印它们。经过几年的生产打印,今天我注意到另一个 HP 异常:一个简单的 47kB 10 页表格文件导致 HP 打印机在页面之间暂停几秒钟。 (表格不跨页)。

我有一个自定义打印假脱机程序,可确保从呼叫中心提交的文件中连贯地打印某些文档包,并且该假脱机程序会记录有多少字节写入打印机的端口 9100 套接字。奇怪的是,这个 47kB 的文件记录了 6,442kB 的发送字节数(137 次!),这需要 71 秒。大多数 50kB 文件的套接字写入只需要几毫秒,除非打印机得到备份(我有几种限制文件写入的技术,以避免打印机陷入困境,从而提高吞吐量。这种限制只会延迟文件之间,而不是文件内部)。

多个页面是使用 Prawn 的@pdf.start_new_page 创建的。在 OSX 的 Skim 或 Preview 中查看 PDF 并没有什么意外。

我的其他大约 100 个 PDF 文件类型都不会导致这种奇怪的打印机暂停,尽管几乎所有其他文件类型都是单页的。

所有其他@socket.write(str) 调用实际上发送文件中的字节数。

这些文件包含专有的法庭案件信息,所以我不能只附上样本。如果有人有建议,也许我可以使用无意义的数据创建一个类似的文件......

顺便说一句 - 我发现 HP 的支持毫无用处,尽管我们为此付出了很多。

【问题讨论】:

  • 页面之间的长时间停顿对我来说几乎总是字体问题。你的驱动程序是 PCL5 吗?有时仅使用 PCL5 驱动程序就足以修复它。否则,请更改 pdf 以使用与其他字体相同的字体,而不会永远使用。
  • 没有什么真正有用的补充,因为这是一个相当晦涩的话题,但是您是否将问题隔离到打印机:即直接将文档发送到打印机而不使用打印服务器/特殊的后台处理程序/其他软件在中间。如果问题仍然存在,则可能是驱动程序错误(您可以尝试更新或回滚),如果不是,则说明您的设置中存在问题(您可以主动采取措施来修复它。)

标签: pdf printing


【解决方案1】:

我严重怀疑您的 HP 打印机是否能够直接使用 PDF 文件。

我怀疑您所谓的“自定义后台处理程序”会默默地将 PDF 文件转换为 PCL 或 PostScript(就像 CUPS 所做的那样),以便为打印设备提供可消化的数据格式。

很可能是这个转换后的数据(PCL、PostScript 等)会产生 6.442 kB 的字节发送到打印机。

为了验证或调试这种情况,您应该使用一些可用的技术来捕获发送到打印机的实际数据...

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-10-04
    • 2017-04-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多