PSF(8) | FreeBSD System Manager's Manual | PSF(8) |
名前
psf - PostScript フィルタ書式
psf [ -n name ] [ -h host ] [ -w width ] [ -l length ] [ -i indent ] [ -c ]説明
psf は PostScript 印刷をするための lpd フィルタである。 psf は、どのフィルタを起動するかを決めるために、自分がどういう名前で呼び出されたかを調べる。まず、名前のどこかに文字列 ``pap'' がある場合は、 psf は AppleTalk を経由してプリンタと通信するために pap を起動する。次に、文字列 ``rev'' がある場合は、 psf はジョブのページを逆順にするために psorder を起動する。最後に、 psf が名前の先頭部にフィルター名を付けて呼ばれた場合は、そのフィルタを起動する。実行するフィルタがない場合、 psf は入力のマジックナンバーを調べ、入力が PostScript でない場合は PostScript に変換する。クラッジ (KLUDGE)
デフォルトの設定では、 psf は 2 つのクラッジをサポートしている。 1 番目のクラッジは、自分の名前に文字 `m' があるかどうかを psf にチェックさせる。この文字があり、アカウンティングが有効になっている場合、 psf は pap を 2 度呼び出す。 1 度目は初期ページカウントを取得し、印刷ジョブを行うためである。 2 度目は最終ページカウントを取得するためである。これは、プリンタが PAP 出力ファイルを閉じなくなるといった、いろいろな PAP 実装に含まれるバグに対処するためのものである。その顕著な例は Hewlett-Packard のプリンタである。2 番目のクラッジは、自分の名前に文字 `w' があるかどうかを psf にチェックさせる。この文字があり、アカウンティングが有効になっている場合、 psf は pap を -w フラグ付きで呼び出す。このフラグがつくと、 pap はプリンタ状態に文字列 `idle' が現われるまで待つ。見つかったら、通常と同じく印刷ジョブが行われる。このクラッジは、特に Hewlett-Packard の LaserJet IV に対処するためのものである。このプリンタは、前のページがまだ印刷されている際中にページカウントを報告する。
例
以下の printcap エントリの例では、テキストファイル・PostScript ファイル・ troff の C/A/T 出力・ TeX の DVI 出力を AppleTalk に接続された LaserWriter Plus で印刷するために psf を起動する。 LaserWriter Plus はページを降順に積み重ねるので、ページを逆順にして、バーストページを最後に印刷する。laser|lp|LaserWriter Plus on AppleTalk:\
:sd=/usr/spool/lpd/laser:\
:lp=/usr/spool/lpd/laser/null:\
:lf=/var/adm/lpd-errs:pw#80:hl:\
:of=/usr/lib/filters/ofpap:\
:if=/usr/lib/filters/ifpaprev:\
:tf=/usr/lib/filters/tfpaprev:\
:df=/usr/lib/filters/dfpaprev:
最後に、スプールディレクトリ /var/spool/lpd/laser には .paprc という名前のファイルがある。 pap はプリンタの AppleTalk 名を調べるためにこのファイルを読む。
関連項目
psorder(1), printcap(5), lpd(8), mknod(8), pap(8).17 Dec 1991 | netatalk 1.2 |