2 FreeBSD handbook中文版 11 打印 高级打印机设置 B.Header Pages

=============================================================
11.4 高级打印机设置
=============================================================

11.4.2 Header Pages
如果你有很多使用者使用不同的打印机,那么你也许会觉得需要打印header pages 。
Header pages,也称做banner 或burst pages,是用来辨认打出来的工作是属于谁的 。通
常header pages 以粗体的大字,可能再加上外框打出来的,如此,使用者才能快速的在一堆
打出的结果找到属于自己的部分 。不过header page 的缺点就是每个工作都会多使用一张纸
来打印header page 。它的功用可能不会超过一分钟,而最后的下场都是丢进资源回收箱或是
垃圾筒 。(不过header pages 是一份工作一张,而不是一个文件一张,所以纸张的浪费可能没
有你想象的那么严重) 。
如果你的打印机可以直接打印纯文本的话,那么LPD 可以自动为你的输出加上header
pages 。如果你的打印机是PostScript 的,那么你将会需要额外的程序来产生header page;请
阅读在PostScript 打印机上打印Header Pages 这一节 。
11.4.2.1 启用header pages
在简单的打印机设置这节里,我们在/etc/printcap 文件里利用设置sh 以不打印header
page (sh 即“suppress header”的意思) 。如果某一台打印机要打印header pages 的话,那么只
要将sh 关键词删除就行了 。
看起来是不是很简单?
没错 。你也许需要提供一个输出用过滤程序将初始化句柄送给打印机 。下面是一个适用
于Hewlett Packard PCL 兼容打印机使用的输出用过滤程序:
#!/bin/sh
#
# hpof - Output filter for Hewlett Packard PCL-compatible printers
# Installed in /usr/local/libexec/hpof
printf “33&k2G” || exit 2
第39 页FreeBSD 使用手册
exec /usr/libexec/lpr/lpf
我们用of 关键词来指定输出用过滤程序的路径 。请阅读输出用的过滤程序这一节以
取得更多的信息 。
下面是一个为我们先前提到的打印机teak 在teak 文件里设置要打印header pages 及输
出用过滤程序的例子:
#
# /etc/printcap for host orchid
#
teak|hp|laserjet|Hewlett Packard LaserJet 3Si:
:lp=/dev/lpt0:sd=/var/spool/lpd/teak:mx#0:
:if=/usr/local/libexec/hpif:
:vf=/usr/local/libexec/hpvf:
:of=/usr/local/libexec/hpof:
现在,当使用者用teak 打印时,它们每个工作都会有一张header page 。如果使用者们
愿意花时间自己找出自己打出的东西,那么它们可以用lpr -h 命令设置不打出header pages;
请阅读Header Page 参数以得知更多lpr 的参数 。
注意: LPD 打完header page 后会送出form feed 字符 。如果你的打印机送出纸张的命令
不是用这个字符,你可以在/etc/printcap 文件中用ff 关键词指定 。
11.4.2.2 控制header pages
如果选择要打印header pages,LPD 将会产生出long header,这将使用者、机器以及工
作名称以大字打印在一整页上 。这里有一个例子(kelly 从rose 这台印机打印outline 这个工
作):
k ll ll
k l l
k l l
k k eeee l l y y
k k e e l l y y
k k eeeeee l l y y
kk k e l l y y
第40 页ll
FreeBSD 使用手册
k k e e l l y yy
k k eeee lll lll yyy y
y
y y
yyyy
t l i
t l
oooo u u ttttt l ii n nnn eeee
· o u u t l i nn n e e
· o u u t l i n n eeeeee
· o u u t l i n n e
· o u uu t t l i n n e e
oooo uuu u tt lll iii n n eeee
r rrr oooo ssss eeee
rr r o o s s e e
r o o ss eeeeee
r o o ss e
r o o s s e e
r oooo ssss eeee
Job: outline
Date: Sun Sep 17 11:04:58 1995
LPD 在打印完这些后会送出form feed 字符,使得真正的打印工作会以新的一页开始打
印(除非你在/etc/printcap 文件为指定的打印机设置了sf (supress form feeds)) 。
第41 页FreeBSD 使用手册

推荐阅读