好的。因此,我理解CUPS作为打印假脱机器工作,管理打印作业并将它们发送到打印机。我还理解PPD文件描述了打印机的功能集,CUPS使用这些特性和过滤器与打印机进行接口,从而生成打印机可以用来打印文档的输出( PostScript、PCL或打印机所需的任何专有格式)。但我对这件事的几个方面感到困惑。主要是:
谢谢你帮我澄清我的困惑。
发布于 2018-04-07 20:42:21
有许多方法可以将打印作业发送到CUPS:
lp
或lpr
命令的实现中进行打印。localhost
上的端口515/TCP中使用LPD打印协议。localhost
端口631讨论IPP。libcups.so
)来支持完整的本机CUPS。如果使用lp
或lpr
命令,则必须使用命令行选项指定任何作业选项,而且不存在自动发现受支持选项的传统方法;使用此遗留Unix接口的任何程序通常都允许用户编辑打印命令行以设置所需的任何选项。CUPS还包括一个文件格式自动检测(类似于file
命令),这样您就可以在理论上使用lp something.png
,如果CUPS有PNG格式转换器,就可以以某种合理的方式打印图像。
IPP的CUPS实现包括一些协议扩展,允许客户端查询和设置打印机和作业选项,甚至请求PPD内容。
IPP协议本身包括内容协商,很像HTTP:服务器指定它可以接受的打印作业格式为MIME类型,客户机声明它将要发送的数据格式。如果服务器不支持特定的作业格式,则可以拒绝作业。还可以将"application/vnd.cups-raw“指定为作业格式,以指示作业应该按照-不进行任何转换的方式传递给打印机: CUPS管理员可以选择允许或不允许这样做。
一般来说,CUPS服务器有一系列作业格式转换器,可用于将各种文件类型转换为某种标准的“排队作业格式”,并从那里转换到打印机正在接受的任何文件(例如PCL、PostScript或一种更专有的格式)。“排队作业格式”以前是PostScript,但现在在CUPS的现代版本中是PDF格式。
https://unix.stackexchange.com/questions/322898
复制相似问题