我的意思是,如果 CUPS 只是一个中介,而我们无论如何都需要客户端的驱动程序,为什么我们必须将它们安装在 CUPS 上?客户不会发送打印机语言作业吗?那么,如果作业已经翻译成打印机语言,为什么 CUPS 还需要驱动程序呢?
答案1
如果客户端(例如:Windows 用户)已经使用打印机驱动程序以打印机接受的某种格式(例如:PS)输出作业,则 CUPS 看起来根本不需要 PPD 文件。在这种情况下,CUPS 仅充当中介,并且打印机队列可以定义为原始队列。刚刚测试了该场景,效果很好。
答案2
我们应该将驱动程序与打印机描述文件和过滤器分开。
应用程序需要驱动程序(本身或由操作系统提供)来将它们使用的任何页面格式转换为操作系统可以理解的语言。据我所知,MS Windows 客户端通常直接生成 Postscript,或更常见的是使用 GDI,然后 Windows 将其转换为打印机可以理解的任何语言:Adobe Postscript、Adobe PDF、Epson ESC/P 或 ESC/P2、HP PCL ,IBM 法新社…维基百科有一个广泛的清单。
过滤器作为服务器端驱动程序,它们将接受应用程序生成的某种格式的输入,并将其转换为打印机接受的某种格式。当客户端由于某种原因无法生成打印机可以理解的格式时,可能需要它们。
据我所知,Cups不需要驱动程序或过滤器,但可以使用打印机描述,以便它了解打印机的功能,并将该信息传递给客户端。 PPD(Postscript 打印机说明文件)通常可用于 Postscript 打印机,我假设 PDF 打印机也可用,但我猜 MS GDI 和其他较小的打印机(例如 Epson ESC/P2 或 HP PCL 打印机)不存在它们;所以我可以看到可能不需要驱动程序,但一些相当于 PPD 的东西会很方便,可以在(专有)驱动程序包中提供。
顺便问一下,什么是 UL 或 SU,作为服务器故障的替代方案,如上面 Marco 的评论所示?