レーザープリンタがある場合は、PostScript 用のフォントをインストールして管理する必要がある可能性があります。PostScript フォントをインストールするシステムと、その管理方法を決定する必要がある可能性があります。多くのプリンタの場合、プリンタのインストール作業の一部としてフォントを設定します。
PostScript フォントは、プリンタかプリンタと通信を行うシステムのどちらかに、アウトライン形式で格納されます。文書の印刷時に、PostScript インタプリタは、アウトライン記述から適切な大きさの各文字を必要に応じて生成します。文書に必要なフォントが使用するプリンタに格納されていない場合は、文書が印刷される前にそのフォントをプリンタに転送しなければなりません。この転送処理を「フォントのダウンロード」といいます。
フォントは、次のいくつかの方法で格納または使用されます。
「プリンタ常駐フォント」は、プリンタに常時格納されています。これらのフォントは、メーカーによってプリンタの読み取り専用メモリー (ROM) にインストールされている場合があります。プリンタがディスクを備えている場合は、そのディスクにフォントをインストールしなければならないことがあります。ほとんどの PostScript プリンタには、35 の標準フォントが付いています。
「常時ダウンロードフォント」は、PostScript の exitserver プログラムを使用してプリンタに転送されます。常時ダウンロードフォントは、プリンタの電源を切るまでプリンタのメモリーに残っています。ダウンロードフォントに割り当てられたメモリーによって、PostScript 印刷要求では利用可能なサーバーのメモリーが減少します。exitserver プログラムを使用するには、プリンタシステムのパスワードが必要で、プリンタ管理者が使用します。プリンタで出力する大部分の印刷要求に特定のフォントを使用するときは、そのフォントを常時ダウンロードするようにしてください。
あまり頻繁に使用されないか、特殊な目的で使用されるフォントは、ユーザーのシステムに格納できます。ユーザーは、印刷要求を出すときにこれらのフォントを指定できます。そのフォントは印刷要求に追加されてプリンタに転送されます。印刷要求が処理されると、フォントに割り当てられたメモリー空間は、他の印刷要求が使用できるように解放されます。
「ホスト常駐フォント」は、多数のユーザーによって共有されるシステムに格納されます。フォントを格納するシステムは、プリンタサーバーでも印刷クライアントでもかまいません。各ユーザーは印刷する文書のフォントを要求指定できます。この方法は、多数のフォントを利用できるときや、これらのフォントがすべての印刷要求で使用されるとは限らないときに便利です。そのフォントがプリンタサーバーに接続されたプリンタでのみ使用される場合は、プリンタサーバーに格納してください。そのフォントが 1 つのシステム上で、ネットワーク上の複数のプリンタに要求を依頼する可能性があるユーザーによって使用される場合は、フォントはそのユーザーのシステムに格納してください。
LP 印刷サービスには、ホスト常駐フォントを管理するための特殊なダウンロード用のフィルタがあります。また、troff プログラムで使用するために、多くの PostScript プリンタに搭載された 35 の標準 PostScript フォント用の troff(1) のフォント幅テーブルも提供しています。
ほとんどの PostScript プリンタは、プリンタ内蔵の ROM にフォントが搭載されています。プリンタによっては、追加フォントを格納するためのディスクが用意されています。プリンタをインストールするときに、そのプリンタ用のフォントリストにプリンタ常駐フォントを追加してください。プリンタ常駐フォントがわかっていれば、フォントをネットワーク経由で必要以上に転送することがなくなります。各プリンタには搭載されているフォントの独自のリストがあります。
/etc/lp/printers/printer-name/residentfonts |
プリンタをプリンタサーバーに接続するときには、プリンタサーバー上にあってプリンタにダウンロードできるフォントが、residentfonts ファイル内のリストに含まれているかどうかを確認します。
プリンタ常駐フォントのリストが入っているファイルは、vi などのテキストエディタを使用して編集しなければなりません。
PostScript の文書がプリンタにダウンロードされていないフォント指定を含んでいるときは、「ダウンロードフィルタ」がこの印刷要求を管理します。ダウンロードフィルタは PostScript の文書作成規則を使用して、ダウンロードするフォントを決定します。
LP 印刷フィルタには、高速フィルタと低速フィルタがあります。高速フィルタは、印刷するファイルをすばやく準備し、フィルタが処理している間にプリンタにアクセスしなければなりません。低速フィルタはファイルの変換に時間がかかり、フィルタが処理している間にプリンタにアクセスする必要はありません。低速フィルタの例には、ASCII ファイルから PostScript ファイルへのフィルタがあります。
ダウンロードフィルタは高速フィルタです。フォントがプリンタサーバー上にある場合は、フォントを自動的にダウンロードします。また、ダウンロードフィルタを使用して、プリンタサーバーにフォントを転送することもできます。そのためには、lp -y コマンドを指定して、ダウンロードフィルタを低速フィルタとして呼び出すための新しいフィルタテーブルのエントリを作成します。あるいは、入力タイプを変更して、このフィルタの選択を強制することもできます。
ダウンロードフィルタは、次の 5 つの作業を実行します。
PostScript の文書を検索して、要求されているフォントを判別します。これらの要求は、ヘッダコメントの PostScript 構造化コメント %%DocumentFonts: font1 font2 ... で指定されます。
プリンタ常駐フォントのリストを検索して、要求されたフォントをダウンロードしなければならないかどうかを判別します。
フォントがプリンタ上になければ、ダウンロードフィルタは (マップテーブルから適切なファイル名を読み取って) ホスト常駐フォントのディレクトリを検索し、要求されたフォントが利用可能かどうかを判別します。
そのフォントが利用可能であれば、フィルタはそのフォントのファイルを取り出し、印刷するファイルに追加します。
フォント定義ファイルとソースファイル (印刷するファイル) を PostScript プリンタに送ります。
フォントによっては、ホストシステムに格納されており、特定の印刷要求に応じてプリンタに転送されるものがあります。管理者は、システム上のすべてのユーザーが PostScript フォントを使用できるように管理する必要があります。そのためには、これらのフォントのインストール方法とインストール場所を知っておかなければなりません。フォントは名前で要求され、ファイルに格納されているので、LP 印刷サービスはフォント名とフォントを定義しているファイル名を対応付けるマップファイルを持っています。ホスト常駐フォントをインストールするときには、マップファイルとフォントリストの両方を更新しなければなりません。
PostScript プリンタで利用できるフォントは、ユーザーが作成した /usr/share/lib/hostfontdir/typeface/font ディレクトリに格納されます。この場合、typeface は palatino や helvetica などの名前に置き換えられ、font は bold や italic などの名前に置き換えられます。
プリンタサーバーまたは印刷クライアントにスーパーユーザーまたは lp としてログインするか、同等の役割になります。
/etc/lp/printers/printer-name ディレクトリに変更します。
# cd /etc/lp/printers/printer-name |
printer-name |
ダウンロードされた PostScript フォントをインストールするプリンタ名 |
residentfonts ファイルが存在しない場合は作成します。
# touch residentfonts |
常駐させるダウンロードフォントを初めて追加する場合は、このファイルが存在しないことがあります。
residentfonts ファイルを編集して、すべてのプリンタ常駐フォントとダウンロードフォントを追加します。
プリンタサーバーまたは印刷クライアントにスーパーユーザーまたは lp としてログインするか、同等の役割になります。
hostfontdir ディレクトリが存在しない場合は作成します。
# cd /usr/share/lib # mkdir hostfontdir # chmod 775 hostfontdir |
新しい書体のディレクトリが存在しない場合は作成します。
# mkdir typeface |
フォントファイルを適切なディレクトリにコピーします。
# cp filename /usr/share/lib/hostfontdir/typeface/font |
マップテーブルに組み込むフォント名とファイル名を追加します。
/usr/share/lib/hostfontdir ディレクトリに変更します。
vi などのテキストエディタを使用して map ファイルを編集します。
テーブルに追加したいフォントごとに 1 行ずつエントリを追加します。エントリには、フォント名、スペース 1 個、フォントが常駐するファイル名の順に入力します。たとえば、次のようになります。
Palatino-Bold /usr/share/lib/hostfontdir/palatino/bold |
ファイルを保存します。
適切なシステム上のマップテーブルにサンプルエントリを入れておけば、ユーザーは各自の印刷ジョブに (たとえば、Palatino Bold などの) フォントを適用できます。このフォントを含む印刷要求を依頼すると、LP 印刷サービスはそのファイルに /usr/share/lib/hostfontdir/palatino/bold のコピーを追加してから、プリンタに送信します。
troff を使用している場合は、このフォント用の新しいフォント幅テーブルを標準 troff フォントディレクトリ内で作成します。