系统管理指南:打印

实现开放标准打印 API

由于 Oracle Solaris 实现了开放标准打印 API(也称为 PAPI),因此可以使应用程序、工具包和打印命令位于打印服务、协议中立的接口的上面一层。此实现可以与 RFC-1179 打印服务、基于 IPP 的打印服务和基于 LP 的打印服务一同使用。打印机、服务器和作业属性以及发送给打印机的作业提交和查询都属于受支持的 PAPI 功能。通过此支持,打印客户机(无论是应用程序,还是打印命令本身)可以向打印系统查询打印机特征并请求信息。

有关更多信息,请参见下列参考:

打印客户机命令

历史上,打印命令一直受特定打印系统束缚,因为这些命令是在打印系统特定的协议和接口之上实现的。IPP、BSD、LPR、SysV LP 和 LPRng 打印协议就属于这种情况。引入 PAPI 后,就可以使这些打印命令位于打印服务、协议中立的接口的上面一层

PAPI 为应用程序提供了单一的打印服务交互接口。这意味着,可以将应用程序编写为使用此接口以及各种打印服务,而不需要更改应用程序。应用程序不再与特定打印服务(如 LP 打印服务或 CUPS)相关联。相反,可以在系统上轻松地替换打印服务,而不会影响上面的协议或应用程序层。最后,可以根据特定需要开发并选择打印服务。

Oracle Solaris OS 中的 PAPI 实现还提供对 IPP 的服务器端和客户端支持(位于 PAPI 的上面一层)。IPP 作为一组协议特定的库和一个 Apache 模块来实现。与命令实现类似,IPP 侦听服务可以与支持 PAPI 的任何打印服务结合使用。此外,还提供了 RFC-1179 协议的服务器端支持。