系统管理指南:打印

Procedure如何创建新的打印过滤器

  1. 在打印服务器上,成为超级用户或同等角色。

    角色包含授权和具有一定权限的命令。有关角色的更多信息,请参见《系统管理指南:安全性服务》中的“配置 RBAC(任务列表)”

  2. 创建打印过滤器程序。

    有关打印过滤器程序的信息,请参见编写打印过滤器程序。按照惯例,PostScript 打印机的过滤器程序位于 /usr/lib/lp/postscript 目录中。应将您创建的程序放置在所选目录中的 /usr/lib/lp 目录下。

  3. 创建打印过滤器定义。

    有关打印过滤器定义的信息,请参见创建打印过滤器定义。应将打印过滤器定义保存在文本文件中。按照惯例,过滤器定义位于 /etc/lp/fd 目录中,并使用 .fd 后缀进行标识。

  4. 将打印过滤器添加到打印服务器。

    有关说明,请参见如何添加打印过滤器


示例 10–7 创建新的打印过滤器

此示例说明用于将 N37Nlp 转换为 simple 的打印过滤器定义。


Input types: N37, Nlp, simple
Output types: simple
Command: /usr/bin/col
Options: MODES expand = -x
Options: INPUT simple = -p -f

在此示例中,打印过滤器程序被命名为 col。在将新的打印过滤器添加到打印服务器后,将对用户的打印请求进行如下处理:

当用户键入以下命令时:


$ lp -y expand report.doc

使用以下参数运行打印过滤器程序以转换文件:


/usr/bin/col -x -p -f

当用户键入以下命令时:


$ lp -T N37 -y expand report.doc

使用以下参数运行打印过滤器程序以转换文件:


/usr/bin/col -x


示例 10–8 通过将一种输入类型转换为其他输出类型来创建新的打印过滤器

此示例说明用于从 troff 转换为 PostScript 文件的打印过滤器定义。


Input types: troff
 Output types: postscript
 Printer types: PS
 Filter type: slow
 Command: /usr/lib/lp/postscript/dpost
 Options: LENGTH * = -l*
 Options: MODES port = -pp, MODES land = -pl
 Options: MODES group \=\([1-9]\) = -n\l

在此示例中,过滤器程序被命名为 dpost。过滤器程序采用一种输入类型 troff,生成 postscript 输出,并适用于 PS (PostScript) 类型的任何打印机。用户在要求页面方向为纵向模式或横向模式时,只需要提供缩写 portland。由于这些选项不是 LP 打印服务所固有的,因此用户必须通过使用 lp -y 命令指定它们。

在将新的打印过滤器添加到打印服务器后,将对打印请求进行如下处理: