【发布时间】:2016-01-04 19:10:26
【问题描述】:
我有一台旧的 HP Deskjet 打印机,我的问题是如何控制打印机头 XY? 无需额外的微控制器,这一点很重要。我是否需要在 linux 上编写自定义打印机驱动程序或使用某些打印机语言? 主要问题是打印机没有纸就无法打印。 我希望能够打印 PCB 或将打印机硬件用作绘图仪或 CNC(通常为 XY 控制器)。有什么文章或书籍可以开始吗?
【问题讨论】:
标签: linux printing hardware drivers
我有一台旧的 HP Deskjet 打印机,我的问题是如何控制打印机头 XY? 无需额外的微控制器,这一点很重要。我是否需要在 linux 上编写自定义打印机驱动程序或使用某些打印机语言? 主要问题是打印机没有纸就无法打印。 我希望能够打印 PCB 或将打印机硬件用作绘图仪或 CNC(通常为 XY 控制器)。有什么文章或书籍可以开始吗?
【问题讨论】:
标签: linux printing hardware drivers
您没有指定精确的打印机型号,但该打印机很可能是 PCL 或 PostScript 打印机,这意味着它在与计算机通信时使用了更高级别的抽象。 PCL(低级)或postscript(高级)语言旨在告诉打印机您想要什么样的图片,而不是如何绘制这张图片的方式,因此发送到打印机的信息不包含有关如何移动打印头的详细信息。因此,最有可能的是,您可以在不修改打印机硬件的情况下做很少的事情。
鉴于此,您可以尝试发明一些巧妙的技巧来使用 PCL 语言让打印机做您想做的事。以下是您可以开始的地方:查看 /usr/lib/cups/backend/ 并找到直接与您的打印机接口通信的代码(很可能是 USB)。检查 cups 驱动程序以查看此界面的命令行参数。您可以使用此接口将 PCL 语言命令直接发送到打印机。现在尝试阅读一些 PCL 语言参考指南并了解如何强制打印机执行您想要的操作。与硬件的直接接口很可能会简单得多。
【讨论】: