共享打印机时使用 CUPS 自带的驱动程序

共享打印机时使用 CUPS 自带的驱动程序

我正在尝试为家人修好一台旧打印机。打印机本身工作正常,但我找不到从 Windows 10 打印到该打印机的方法,该打印机的驱动程序不再支持最新版本的 Windows。

幸运的是,我能够使用 Ubuntu 打印到该打印机,并且我使用 GUI 共享了该打印机。Windows 计算机能够看到它,但仍要求我提供驱动程序,然后才能打印。

从我刚刚读到的内容来看(如果我错了,请纠正我),Ubuntu 默认使用 CUPS 进行打印,而 CUPS 在共享时应该使用自己的驱动程序,但显然事实并非如此。我遗漏了什么吗?

只需一点说明:我最终将为此使用 Raspberry Pi(我现在没有可以使用的),因此如果我可能需要知道 Pi 上的某些不同之处(否则是 GUI),请告诉我!

编辑:我忘了说了,这是一台 USB 打印机。

答案1

既然您可以在 Linux 上打印,那么您就拥有合适的驱动程序。这很重要,因为 CUPS 还支持“原始”队列,它实际上并不知道如何自己创建打印机数据,而是依靠客户端驱动程序来执行此操作。

因为 CUPS 知道如何打印,所以您只需向其输入 PostScript 数据即可。Windows 附带了各种合适的驱动程序。它们不需要与您的打印机有任何关联。

我引用一下Arch Wiki 的打印机共享文章如下。

首先,要启用共享,它指的是CUPS服务器:

打开服务器的 Web 界面,选择“管理”选项卡,查看“服务器”标题,然后启用“共享连接到此系统的打印机”选项。单击“更改设置”按钮保存更改。服务器将自动重新启动。

然后,在 Windows 上安装打印机:

通过 IPP 共享

将 Windows 客户端连接到 Linux 打印服务器的首选方法是使用 IPP,因为配置比使用 Samba 更简单。它是一种基于 HTTP 的标准打印机协议,允许您使用端口转发、隧道等。自 Windows 2000 以来,Windows 一直原生支持 IPP。

笔记:您可能需要将 Internet 打印客户端添加到 Windows (控制面板->程序->打开或关闭 Windows 功能->打印和文件服务

[...]

在 Windows 计算机上,转到控制面板->设备和打印机并选择“添加打印机”。如果在 Windows 10 上,请单击“我想要的打印机未列出”。接下来,选择“按名称选择共享打印机”并输入打印机的位置:

http://主机名:631/打印机/打印机名称

(在哪里主机名是 GNU/Linux 服务器的主机名或 IP 地址,并且打印机名称是所连接的打印队列的名称。[...]

笔记:

  • Windows 中的“添加打印机”对话框建议使用 格式http://computername/printers/printername/.printer,但 Windows 不会接受该格式。请改用上面建议的语法。
  • 如果你使用代理,请仔细检查任何使用的代理排除。此处的错误设置可能会导致您在下次重启之前无法添加打印机,即使您随后禁用代理(至少在 Windows 7 上)。

之后,在 Windows 计算机上安装打印机的原生打印机驱动程序。如果 CUPS 服务器的打印队列设置为使用自己的打印机驱动程序而不是队列raw,则您只需为 Windows 客户端选择通用的 PostScript 打印机驱动程序(例如“HP Color LaserJet 8500 PS”或“Xerox DocuTech 135 PS2”)。

(最后一段重点是我的)。

答案2

您的打印机 Epson Stylus Photo 960 支持 ESC/P,因此它应该支持文本打印。它不支持 PCL5。一个可以与之配合使用的 Windows 10 驱动程序是通用/纯文本驱动程序。请注意,此驱动程序符合标签:它打印纯文本

如果您需要打印图形,或者您只是需要更好地控制打印机,您可以尝试使用另一台 ESC/P 打印机的驱动程序。如果您搜索“windows 10 esc/p 驱动程序”,您会找到很多。大多数似乎适用于 Epson LX 和 FX 系列的打印机。这些是点阵打印机,不支持彩色。选择一个与您的打印机功能相似的打印机,例如LQ-1070

答案3

我也遇到了同样的问题,通过拼凑一些部分来解决它。

我是新来的,没有资格评论(甚至点赞)其他答案。我理解为什么。我希望我们能有美好的事情发生。

Daniel B 的回答很棒。不幸的是,我花了一段时间才弄清楚一些事情才能让它工作。当我第一次阅读他的回答时,我希望知道以下几点,当时我正试图通过 CUPS 在一台旧的三星 ML-1740 打印机上打印。这些对我来说并不明显。

  • 我的打印机早已过了使用寿命。三星将其打印机业务出售给了惠普,惠普明确指出我的打印机不支持 win10。我能够通过在 winXP 兼容模式下查找/安装旧的三星通用打印机驱动程序 v2 来通过 USB 本地连接使其工作。
  • 在 CUPS 中设置 RAW 队列与通过本地 USB 连接时与同一台打印机配合使用的驱动程序设置不兼容。
  • 现在尝试使用驱动程序的 CUPS,但在列出的驱动程序中找不到我的型号。
  • 我在 openprinting 上为旧打印机制作了一个 PPD 打印机驱动程序https://www.openprinting.org/driver/gdi/并在将打印机添加到 CUPS 时使用它。
  • 我很难在我的系统上找到任何通用的 PostScript 打印机驱动程序 - 按照 openprinting 页面和此页面的指示。其中提到了 Adob​​e 和 Microsoft 通用驱动程序,但我找不到它们。
  • 我使用了适用于 Windows 的 HP 通用打印驱动程序 - Postscript 在此处找到https://support.hp.com/gb-en/drivers/selfservice/hp-universal-print-driver-series-for-windows/503548/model/503550
  • 从 HP 的安装程序添加它不起作用。我添加了 samba 打印共享https://pimylifeup.com/raspberry-pi-print-server/并使用资源管理器位置/url(示例 IPv4 地址)\192.168.1.11 进行浏览 - 然后右键单击并选择“连接” - 出现提示时使用 HP 驱动程序。

这花了我太长时间。我在这里分享一下,以防延迟不是我造成的。

相关内容