Solaris のシステム管理 (印刷)

第 10 章 文字セット、フィルタ、フォーム、およびフォントの管理 (作業)

この章では、LP 印刷サービスや Solaris 印刷マネージャーを使って構成されたプリンタのあるシステム上で、文字セット、フィルタ、フォーム、およびフォントを管理するための概要情報や処理手順を提供します。

この章の内容は次のとおりです。

文字セットの管理 (作業マップ)

作業 

説明 

参照先 

印字ホイールまたはフォントカートリッジの定義 

プリンタで使用できる印字ホイールまたはフォントカートリッジを定義する 

「印字ホイールまたはフォントカートリッジの装着を促す警告を設定する方法」

印字ホイールまたはフォントカートリッジの取り外しと装着 

現在の印字ホイールまたはフォントカートリッジを印刷サーバーの構成ファイルから削除する。印刷サーバーの構成ファイルに、新しい印字ホイールまたはフォントカートリッジを追加する 

「印字ホイールまたはフォントカートリッジの取り外しおよび装着の方法」

印字ホイールまたはフォントカートリッジの装着を促す警告の設定 

印刷要求に対する電子メール警告を設定する 

「印字ホイールまたはフォントカートリッジの装着を促す警告を設定する方法」

選択可能文字セットの別名の設定 

選択可能な文字セットの terminfo 名が不適切な場合に別名を設定する

「選択可能文字セットの別名を設定する方法」

文字セットの管理

テキストを各種フォント書体で印刷する方法は、プリンタによって異なります。たとえば、PostScript プリンタは、テキストをグラフィックスとして処理します。これらのプリンタは、さまざまなフォントでテキストを生成できます。また、ページ上の任意の位置、サイズ、または方向にテキストを配置できます。その他の形式のプリンタは、フォントの書体とサイズが限られています。これらのプリンタは、印字ホイール、フォントカートリッジ、プログラムされた選択可能な文字セットのいずれかを使用するためです。通常、1 つのプリンタ形式には 1 つの印刷方法が適用されます。

LP 印刷サービスでは、印字ホイールとフォントカートリッジの扱いが似ています。どちらの場合も、必要に応じ、ハードウェアをプリンタに装着する必要があります。印字ホイールまたはフォントカートリッジを物理的に装着する必要がある文字セットを、「プリンタに装着する文字セット」といいます。ハードウェア装着を必要としない文字セットは、プリンタにプログラムされた状態で提供されます。これらの文字セットは、印刷要求によって選択できます。これらは「ソフトウェア文字セット」と呼ばれます。

PostScript 以外のプリンタを設定する場合は、ユーザーが利用可能な、印字ホイールまたは選択可能な文字セットを、LP 印刷サービスに指定する必要があります。ユーザーが印刷要求を出すときに、lp -S コマンドを使用すると、ジョブの印刷に使用する印字ホイールまたは選択可能な文字セットを指定できます。ユーザーは、どの種類の文字セットが適用されるかを知る必要はありません。定義した名前でフォントスタイルを参照するだけです。たとえば、印字ホイールを gothic と定義したとします。この gothic 印字ホイールを要求するには、次のコマンドを使用します。


% lp -S gothic filename

選択可能な文字セット

プリンタによってサポートされる選択可能文字セットは、そのプリンタの terminfo エントリに表示されています。たとえば、ln03 プリンタのエントリは、/usr/share/lib/terminfo/l/ln03 です。任意のプリンタタイプで選択可能な文字セット名を確認するには、tput コマンドを使用して、terminfo データベース内を検索します。tput コマンドの構文を、次に示します。


tput -T printer-type csn

csn オプションは文字セット番号 (character set number) の省略形です。番号は、プリンタが初期化された後に常に設定されるデフォルトの文字セット番号である 0 で始まります。その他の文字セット名を表示するには、-0 の代わりに -1- 2-3 などを使用してコマンドを繰り返してください。選択可能文字セットごとに、terminfo 名 (たとえば usasciienglishfinnish など) が返されます。

一般に、 terminfo 文字セット名は、プリンタのメーカーのマニュアルで使用されている文字セット名とできるだけ一致させてください。同じ文字セット名を使用しないメーカーもあるため、terminfo 名はプリンタタイプごとに異なる場合があります。

LP 印刷サービスを使用して選択可能文字セット名を登録する必要はありません。ただし、より意味のある名前または別名を与えることができます。


注 –

プリンタで使用できる選択可能文字セットを指定しない場合、LP 印刷サービスは、プリンタが任意の文字セット名 (cs0cs1cs2 など) またはプリンタが認識する terminfo 名を受け付けることができると仮定します。

lpstat -p -l コマンドを使用しても PostScript プリンタ用の文字セットは表示されません。PostScript のフォントは、terminfo データベースのエントリではなく PostScript フィルタによって制御されます。PostScript フォントの管理方法については、「フォントの管理」を参照してください。


lpstat -p -l コマンドを使用して、印刷サーバーに接続されているプリンタごとに、定義されている選択可能文字セット名を表示できます。

プリンタに装着する文字セット

別の文字セットを使用するもう一つの方法は、物理的にプリンタに装着できる、取り外し可能な印字ホイールまたはフォントカートリッジを使用することです。

プリンタに装着する文字セットを管理するには、LP 印刷サービスに以下の項目を指定します。

次に、ユーザーが lp -S コマンドを使用して特定の文字セットを要求すると、スケジューラは印字ホイールを装着するよう警告を送信します。さらに、印刷要求が印刷待ち行列に入れられます。正しい印字ホイールを装着して、印字ホイールを装着したことを LP 印刷サービスに指示すると、ジョブが印刷されます。詳しくは、「印字ホイールまたはフォントカートリッジの取り外しおよび装着の方法」を参照してください。

1 台のプリンタに対して複数の印字ホイールやフォントカートリッジを指定しなければ、LP 印刷サービスは、プリンタが 1 つの固定の印字ホイールまたはフォントカートリッジだけを持つとみなします。そのため、このプリンタを使用する際には、特殊な印字ホイールやフォントカートリッジをユーザーが指定することはできません。

選択可能文字セットとは違って、印字ホイールまたはフォントカートリッジ用に選択する名前は、terminfo データベースのエントリに限定されません。印字ホイール名またはフォントカートリッジ名は、ユーザーが LP 印刷サービスと通信を行うためにだけ使用されます。

ただし、印字ホイールまたはフォントカートリッジ用に選択する名前は、ユーザーがわかりやすいものにしてください。その名前がフォントの書体を表すようにしてください。さらに、その名前は、同じ種類の印字ホイールやフォントカートリッジ、または選択可能文字セットを持つプリンタすべてに共通にします。それによって、ユーザーは、どのプリンタ、印字ホイール、フォントカートリッジ、選択可能文字セットを使用するかを意識することなく、フォントの書体 (文字セット) を指定できます。

システム管理者とプリンタユーザーは、印字ホイールまたはフォントカートリッジの名前についての認識を共有する必要があります。そうしないと、ユーザーが要求する文字セットと管理者が装着するものが異なる可能性があります。

印字ホイールの確認

印字ホイールを確認する手順は、フォームを確認する手順と似ています。一部のプリンタは (通常、文字ベースの印字を行うプリンタ)、特定のフォントや文字セットを提供する取り外し可能な印字ヘッドを持っています。取り外し可能な印字ヘッドには、印字ホイールや印字カートリッジがあります。ユーザーは名前の付いた文字セットを要求できます。その文字セットが使用できない場合、LP 印刷サービスは root に通知します。印刷ジョブは、印字ホイールが交換されるまで、印刷待ち行列に格納されます。

印字ホイールまたはフォントカートリッジの装着の警告

LP 印刷サービスから出す警告を指定するのと同じ方法で、印字ホイールまたはフォントカートリッジを装着する際に出す警告を指定します。警告に関する一般的な情報については、「LP 印刷コマンドを使用したプリンタの障害回復の設定」を参照してください。

Procedure印字ホイールまたはフォントカートリッジを定義する方法

この手順では、プリンタで使用できる印字ホイールまたはフォントカートリッジを定義する方法を示します。

  1. 印刷サーバーで、スーパーユーザーになるか、同等の役割になります。

    役割には、認証と特権コマンドが含まれます。役割の詳細については、『Solaris のシステム管理 (セキュリティサービス)』「RBAC の構成 (作業マップ)」を参照してください。

  2. 印字ホイールまたはフォントカートリッジを定義します。


    # print-server lpadmin -p printer-name -S hard-charset1[,hard-charset2...]
    -p printer-name

    印字ホイールまたはフォントカートリッジを定義するプリンタ名を指定する。

    -s hard-charset

    印字ホイールまたはフォントカートリッジの、プリンタに装着する文字セット名を指定する。

    このコマンドで、プリンタに装着する文字セット名を複数指定できる。文字セット名を区切るには空白またはコンマを使用する。空白を使用する場合は、文字セット名のリストを引用符で囲む。

    ユーザーにとって意味のある名前を定義する。その名前をユーザーに通知する。

    印字ホイールまたはフォントカートリッジの定義が、印刷サーバーの /etc/lp/printers/printer-name/configuration ファイルに指定されます。

  3. 印刷サーバーのいずれかの印刷クライアントで、スーパーユーザーまたは lp としてログインするか、同等の役割を引き受けます。

  4. 印刷クライアントに対して同じ印字ホイールまたはフォントカートリッジを定義します。


    # print-client lpadmin -p printer-name -S hard-charset1, hard-charset2...
    

    このコマンドの変数は、手順 2 の変数と同じです。

    印字ホイールまたはフォントカートリッジの定義が、印刷クライアントの /etc/lp/printers/printer-name/configuration ファイルに追加されます。

  5. 印字ホイールまたはフォントカートリッジを使用する必要がある印刷クライアントごとに、手順 3手順 4 を繰り返します。

  6. 印字ホイールまたはフォントカートリッジが定義されていることを確認します。

    文字セット名と状態「mounted」が表示されます。


    # lpstat -p printer-name -l
    

例 10–1 印字ホイールの定義

次の例は、プリンタ luna 上で印字ホイール pica を定義する方法を示しています。印刷クライアント名は asteroid です。


asteroid# lpadmin -p luna -S pica

Procedure印字ホイールまたはフォントカートリッジの取り外しおよび装着の方法

  1. 印刷サーバーで、スーパーユーザーになるか、同等の役割になります。

    役割には、認証と特権コマンドが含まれます。役割の詳細については、『Solaris のシステム管理 (セキュリティサービス)』「RBAC の構成 (作業マップ)」を参照してください。

  2. プリンタに装着された印字ホイールまたはフォントカートリッジを取り外します。


    # lpadmin -p printer-name -M -S none
    
    -p printer-name

    印字ホイールまたはフォントカートリッジを取り外すプリンタ名を指定する

    -M -S none

    現在の印字ホイールまたはフォントカートリッジを取り外すように指定する

    詳細は、lpadmin(1M) のマニュアルページを参照してください。

    現在の印字ホイールまたはフォントカートリッジが、印刷サーバーの /etc/lp/printers/printer-name/configuration ファイルから削除されます。

  3. 印字ホイールまたはフォントカートリッジをプリンタから取り出します。

  4. プリンタに新しい印字ホイールまたはフォントカートリッジを入れます。

  5. 新しい印字ホイールまたはフォントカートリッジを装着します。


    # lpadmin -p printer-name -M -S hard-charset...
    
    -p printer-name

    印字ホイールまたはフォントカートリッジを装着するプリンタ名を指定する

    -M -S hard-charset

    装着したい印字ホイールまたはフォントカートリッジの、プリンタに装着する文字セット名を指定する

    印字ホイールまたはフォントカートリッジが、印刷サーバーの /etc/lp/printers/printer-name/configuration ファイルに追加されます。装着された印字ホイールまたはフォントカートリッジは、取り外されるか、新しいものが装着されるまで使用可能です。

  6. 次のコマンドの出力の中で、「Print wheels」または「Character set」の見だしの下にある情報をチェックします。

    印字ホイール名または文字セット名と状態「mounted」が表示されます。


    # lpstat -p printer-name -l
    

例 10–2 印字ホイールを取り外すまたは装着する

次の例は、プリンタ luna の現在の印字ホイールを取り外し、pica 印字ホイールを装着する方法を示しています。


# lpadmin -p luna -M -S none
# lpadmin -p luna -M -S pica

Procedure印字ホイールまたはフォントカートリッジの装着を促す警告を設定する方法

  1. 印刷サーバーで、スーパーユーザーになるか、同等の役割になります。

    役割には、認証と特権コマンドが含まれます。役割の詳細については、『Solaris のシステム管理 (セキュリティサービス)』「RBAC の構成 (作業マップ)」を参照してください。

  2. 印字ホイールまたはフォントカートリッジの装着を促す警告を設定します。


    # lpadmin -S hard-charset -A alert [-Q requests] [-W minutes]
    -S hard-charset

    警告を設定したい印字ホイールまたはフォントカートリッジの、プリンタに装着する文字セット名を指定する

    -A alert

    印字ホイールまたはフォントカートリッジが要求されたときに出される警告の種類を指定する。alert の有効値については、表 6–5 を参照してください。有効な値は mailwritequiet などです。

    mail または write を指定すると、特定の印字ホイールまたはフォントカートリッジの装着を促す、あらかじめ定義された警告メッセージが表示される。この警告メッセージには、この印字ホイールまたはフォントカートリッジを使用するように設定されている 1 つ以上のプリンタ名が含まれる

    -Q requests

    この印字ホイールまたはフォントカートリッジを必要とする印刷要求がいくつ待ち行列に入ったら警告を出すかを指定する。このオプションを指定しなければ、待ち行列に印刷要求が 1 つ入っただけで警告が出される

    -W minutes

    警告が出される間隔 (分単位) を指定する。このオプションを指定しなければ、警告は一度だけ送られる

    詳細は、lpadmin(1M) のマニュアルページを参照してください。

    警告は、印刷サーバーの /etc/lp/pwheels/charset-name/alert.sh ファイルに追加されます。

  3. 次のコマンドの出力をチェックして、印字ホイールまたはフォントカートリッジの装着を促す警告が追加されているかどうかを確認します。


    # lpadmin -S hard-charset -A list
    

    あるいは、警告を出すまでの印刷要求の数を低く設定した場合、最低限の条件を満たす印刷要求を出してみます。印字ホイールまたはフォントカートリッジの装着を促す警告を受け取ることを確認します。


例 10–3 印字ホイールの装着を促す警告を設定する

次の例は、印刷待ち行列に elite 印字ホイールに対する 10 の印刷要求があるとき、elite に関して 5 分間隔で電子メールで警告が送られるように設定する方法を示しています。


# lpadmin -S elite -A mail -Q 10 -W 5


例 10–4 フォントカートリッジの装着を促す警告を設定する

次の例は、印刷待ち行列に finnish フォントカートリッジに対する 5 つの印刷要求があるときに、finnish に関して 1 分間隔で電子メールで警告が送られるように設定する方法を示しています。


# lpadmin -S finnish -A mail -Q 5 -W 1


例 10–5 印字ホイールの警告を設定しない

次の例は、elite 印字ホイールについての警告が送られないように設定する方法を示します。


# lpadmin -S elite -A none

Procedure選択可能文字セットの別名を設定する方法

選択可能文字セットの terminfo 名が適切な場合は、この手順を実行する必要はありません。 terminfo データベースの使用については、「サポートされていないプリンタの terminfo エントリを追加する」を参照してください。

  1. 印刷サーバーで、スーパーユーザーになるか、同等の役割になります。

    役割には、認証と特権コマンドが含まれます。役割の詳細については、『Solaris のシステム管理 (セキュリティサービス)』「RBAC の構成 (作業マップ)」を参照してください。

  2. 指定したプリンタタイプの選択可能文字セット名を表示します。


    # tput -T printer-type csn
    
    -T printer-type

    terminfo データベースに入っているプリンタタイプを指定する。terminfo データベースのエントリについては、「プリンタタイプ」を参照。

    n

    指定したプリンタタイプの選択可能文字セットを表す番号 (0、1、2、3、4、5 など) を指定する。プロンプト記号に続いて選択可能文字セット名が表示される。たとえば、cs1 と指定すると、english# と表示される。

    詳細は、tput(1) のマニュアルページを参照してください。

  3. 選択可能文字セットの別名の設定


    # lpadmin -p printer-name -S select-charset1=alias1,select-charset2=alias2...
    
    -p printer-name

    選択可能文字セットの別名を設定するプリンタ名を指定する。

    -Sselect-charset

    選択可能文字セット名を指定する。この名前は、手順 2 で検索できる。

    alias

    指定した選択可能文字セットの別名。選択可能文字セット名の他に、この別名を使用できる。

    このコマンドで複数の別名を設定できる。別名を区切るには空白またはコンマを使用する。空白を使用する場合は、別名のリストを引用符で囲む。

    別名は、印刷サーバーの /etc/lp/printers/printer-name/configuration ファイルに追加されます。

  4. 印刷サーバーのいずれかの印刷クライアントとなるシステムで、スーパーユーザーまたは lp としてログインするか、同等の役割を引き受けます。

  5. 選択可能文字セットの別名を設定します。


    # lpadmin -p printer-name -S select-charset1=alias1,select-charset2=alias2...
    

    このコマンドの変数は、手順 3 の変数と同じです。

    別名は、印刷クライアントの /etc/lp/printers/printer-name/configuration ファイルに追加されます。

  6. この別名を使用する必要がある印刷クライアントごとに、手順 4手順 5 を繰り返します。

  7. 印刷サーバーと印刷クライアント上で、次のコマンドの出力の中に選択可能文字セットの別名があることを確認します。


    # lpstat -p printer-name -l
    

    または、選択可能文字セットに別名を使用する印刷要求を出して、出力をチェックします。


例 10–6 選択可能文字セットの別名を設定する

次の例は、プリンタ luna 上の選択可能な文字セット usascii に対する選択可能な文字セットの名前を表示する方法を示しています。プリンタ luna のプリンタタイプは ln03 です。この例は、選択可能文字セット usascii の別名として text を指定する方法も示します。


# tput -T ln03 cs0
usascii# tput -T ln03 cs1
english# tput -T ln03 csn2
finnish# tput -T ln03 csn3
japanese# tput -T ln03 cs4
norwegian#
# lpadmin -p luna -S usascii=text

印刷フィルタの管理 (作業マップ)

作業 

説明 

参照先 

印刷フィルタを新規作成する 

LP 印刷サービスが解釈できないファイルタイプ用に、印刷フィルタを新規作成する 

「新しい印刷フィルタを作成する方法」

印刷フィルタの追加 

印刷フィルタに関する情報を追加する。印刷フィルタとは、ファイルの内容形式を出力先プリンタが受け付けられる内容形式に変換するプログラムを指す 

「印刷フィルタを追加する方法」

印刷フィルタの削除 

印刷フィルタに関する情報を削除する。印刷フィルタとは、ファイルの内容形式を出力先プリンタが受け付けられる内容形式に変換するプログラムを指す 

「印刷フィルタを削除する方法」

印刷フィルタに関する情報の表示 

印刷フィルタに関する情報を削除する。印刷フィルタとは、ファイルの内容形式を出力先プリンタが受け付けられる内容形式に変換するプログラムを指す 

「印刷フィルタに関する情報を表示する方法」

新しい印刷フィルタの作成

フィルタは、LP 印刷サービスがプリンタで解釈できないタイプのファイルを印刷する必要があるたびに使用されます。新しい印刷フィルタを作成するのは簡単ではありません。通常は幅広い経験が必要です。

新しい印刷フィルタを定義するには、次の 2 つの手順があります。

印刷フィルタは、必要に応じて簡単なものでも複雑なものでもかまいません。フィルタには、入力形式、出力形式、そのフィルタ内でコマンド行引数を処理する言語を提供する複雑なオプションが入っています。

PostScript 以外のプリンタを使用する場合は、必要に応じて印刷フィルタを作成して追加する必要があります。まず、印刷フィルタの機能と、フィルタプログラムが満たさなければならない要件を理解しておく必要があります。

印刷フィルタプログラムの作成

LP 印刷サービスには、/usr/lib/lp/postscript ディレクトリにフィルタプログラムが組み込まれています。これらのフィルタは、送信先プリンタが PostScript 形式のデータを必要とするほとんどの PostScript 印刷の状況に対応します。印刷フィルタプログラムは、2 進の実行可能プログラムファイルでなければなりません。

フィルタのタイプ

印刷フィルタには、高速フィルタと低速フィルタの 2 種類があります。

「高速フィルタ」は、ファイルの印刷準備にあまり処理時間がかかりません。また、実行するときにはプリンタにアクセスしなければなりません。プリンタ障害を検出する印刷フィルタは、高速フィルタでなければなりません。PRINTER キーワードをフィルタオプションとして使用するフィルタは、高速フィルタとしてインストールしなければなりません。

「低速フィルタ」は、ファイルの印刷準備に大量の処理時間がかかります。また、低速フィルタは実行するときにプリンタにアクセスする必要がありません。低速フィルタはバックグラウンドで実行されるので、プリンタと連結する必要がなく、低速フィルタを必要としないほかのファイルを印刷できます。

ファイルの変換

LP 印刷サービスは、印刷フィルタを使用して、ある内容形式から別の内容形式にファイルを変換します。プリンタごとに、受け付けられるファイル内容形式を指定できます。ユーザーは印刷要求を出すときにファイル内容形式を指定します。LP 印刷サービスはその内容形式のファイルを印刷できるプリンタを探します。多くのアプリケーションは各種プリンタに合わせてファイルを生成できるので、通常はこれで十分です。ただし、アプリケーションによっては、利用できるプリンタ上で印刷できないファイルを生成するものがあります。

LP 印刷サービスは、プリンタで直接受け付けられない形式のファイルの印刷要求を受信するたびに、内容形式が印刷要求と一致する、使用可能な (または指定されている) プリンタを探します。一致するプリンタがあれば、ファイルはフィルタを使用せずにそのプリンタに直接送信できます。一致するプリンタがない場合や、内容形式でフィルタを使用するように指定されている場合は、LP 印刷サービスはファイルの内容形式と入力内容形式が一致する、使用可能なフィルタを探します。LP 印刷サービスはさらに、プリンタの内容形式と出力内容形式が一致するフィルタを探します。適切なフィルタが見つかると、印刷要求はフィルタを通して渡されます。

特殊印刷モードの処理

印刷フィルタは、特殊印刷モードを処理し特殊ページの印刷を要求します。特殊印刷モードは、カスタマイズされたフィルタが必要な印刷要求の特性を印刷するために必要です。

フィルタは、次の特性を処理します。

LP 印刷サービスは、これらの特性にデフォルト設定を提供します。ただし、印刷フィルタの方が一部の特性を効率よく処理できます。たとえば、プリンタによっては、LP 印刷サービスより効率よく複数のコピーを処理できるものがあります。その場合は、複数コピーのページ制御用フィルタを提供できます。

プリンタ障害の検出

各プリンタは、独自の方法でプリンタ障害を検出し、障害信号を LP 印刷サービスに送信します。LP 印刷サービスは、印刷中にハングアップ (キャリア喪失) と過剰な遅延の有無をチェックするだけです。

プリンタによっては、優れた障害処理能力を持ち、障害の原因を記述するメッセージを送信できるものがあります。また、キャリア信号の喪失やデータフローのシャットオフを示すものとは異なる信号を使用して障害を示すプリンタもあります。これらの付加的なプリンタ障害情報を解釈するには、フィルタが必要です。

また、フィルタでは印刷要求を保留し、プリンタ障害がクリアされるまで待ってから印刷を再開できます。この機能を使用すると、中断された印刷要求全体を印刷し直す必要がありません。プリンタに使用される制御シーケンスを認識するフィルタだけが、ファイルの改ページ位置を判別できます。したがって、その種のフィルタ以外は、障害がクリアされた後で印刷を再開する必要があるファイル内の位置を検出できません。

印刷フィルタがメッセージを生成すると、そのメッセージは LP 印刷サービスによって処理されます。警告が使用可能になっている場合は、LP 印刷サービスがシステム管理者に警告を送信します。詳細は、「LP 印刷コマンドを使用したプリンタ障害警告の設定」を参照してください。

印刷フィルタプログラムの要件

印刷フィルタは単純なものでも複雑なものでもかまいませんが、次の要件を満たさなければなりません。

フィルタにプリンタ障害を検出させたい場合は、次の要件も満たしてください。

印刷フィルタ定義の作成

印刷フィルタ定義は、フィルタ、実行する印刷フィルタプログラム、実行する変換の種類などを LP 印刷サービスに指示します。/etc/lp/fd ディレクトリには、一連のフィルタ記述子ファイルが組み込まれています。これらのファイルは、フィルタの特性 (高速または低速フィルタなど) を記述し、フィルタプログラム (/usr/lib/lp/postscript/postdaisy など) を指定します。

新しい印刷フィルタを定義するときには、印刷フィルタ定義を作成しなければなりません。

印刷フィルタ定義には、LP 印刷サービスが使用する次の情報が入っています。

lpfilter コマンドへの直接入力として特性を入力できます。また、フィルタの特性を指定するファイルを作成し、そのファイル名を lpfilter コマンド引数への入力として使用することもできます。この種のファイルは「フィルタ記述子ファイル」と呼ばれ、/etc/lp/fd ディレクトリに配置する必要があります。これらのファイルはフィルタそのものではありません。これらのファイルは、フィルタを指定します。

情報をファイルに格納するかコマンド行に直接入力するかに関係なく、次の形式を使用してください。


Command: command-pathname [options]
Input types: input-type-list
Output types: output-type-list
Printer types: printer-type-list
Printers: printer-list
Filter type: fast or slow
Options: template-list

注 –

Options 以外のフィルタ特性に複数の定義 (つまり複数行) を与えると、2 番目の定義のみが印刷サービスに使用されます。


情報はどんな順序で配置してもかまいません。また、すべての情報が必要とは限りません。値を指定しなければ、次の表の値がデフォルトで割り当てられます。デフォルト値はあまり便利ではないので、明示的な値を指定するようにしてください。

表 10–1 lpfilter コマンドのデフォルト値

項目 

デフォルト値 

入力タイプ 

任意

出力タイプ 

任意

プリンタタイプ 

任意

プリンタ 

任意

フィルタタイプ 

slow

lpfilter コマンド

フィルタプログラムのフルパスを使用してください。プログラムが必ず必要とする固定オプションがある場合は、それらをこのコマンドに含めます。

lpfilter の入力タイプ引数

入力タイプは、印刷フィルタが処理できるファイル内容形式のリストです。LP 印刷サービスも入力タイプ数を制限しますが、ほとんどのフィルタは 1 つの入力タイプしか受け付けません。いくつかのファイルタイプは、フィルタで処理できる程度に類似しています。14 文字以内の英数字とダッシュを使用した名前を指定できます。入力タイプ名の一部として下線 (_) は使用できません。

LP 印刷サービスは、一貫した命名規則に合致するように、これらの名前を使用してフィルタをファイルタイプと一致させます。たとえば、複数のフィルタが同じ入力タイプを受け付ける場合は、各フィルタ用に指定するときに、その入力タイプに同じ名前を使用します。ユーザーには、ファイルの印刷を依頼するときにファイルタイプの識別方法がわかるように、これらの名前を通知してください。

lpfilter の出力タイプ引数

出力タイプは、フィルタが出力として生成できるファイルタイプのリストです。入力タイプごとに、フィルタは 1 つずつ出力タイプを生成します。ただし、出力タイプはジョブごとに異なることがあります。出力タイプ名は、14 文字以内の英数字とダッシュ (-) です。

出力タイプ名は、利用できる (ローカルまたはリモート) プリンタのタイプと一致するか、他のフィルタで処理される入力タイプと一致しなければなりません。LP 印刷サービスは、ファイルを変換するために異なるフィルタを複数回かける必要があることがわかると、フィルタをシェルパイプラインにグループ化します。このように複雑な処理はほとんど必要ありませんが、LP 印刷サービスではこの処理を実行できます。ユーザーが印刷したいあらゆるファイルを入力タイプにするフィルタの集合を探して、各ファイルをプリンタで処理できるファイルタイプに直接変換してください。

lpfilter のプリンタタイプ引数

プリンタタイプは、印刷フィルタがファイルを変換できるプリンタタイプのリストです。ほとんどのプリンタとフィルタの場合、これは出力タイプのリストと同じなので、フィルタ定義のこの部分はブランクにしておいてかまいません。しかし、別のリストを使用することもできます。たとえば、初期化には 1 つのプリンタタイプだけを使用するプリンタがあるとします。それでも、このプリンタは複数のファイル内容形式を認識できます。実際には、このプリンタには、各種ファイルタイプを、処理できるファイルタイプに変換する内部フィルタが付いています。したがって、1 つのフィルタは、プリンタで処理できるファイルタイプに合った複数の出力タイプのいずれかを生成できます。印刷フィルタには、そのプリンタタイプで機能することを示すマークを付ける必要があります。

もう 1 つの例として、同じファイルタイプを受け付けるものとして表示される 2 つのモデルのプリンタを使用できます。ただし、内部に若干違いがあるので、一方のプリンタが生成する結果と異なります。それらのプリンタには、A と B など、異なるプリンタタイプであることを示すラベルを付けます。この場合、B はズレがある方のプリンタです。タイプ B のプリンタで生成されるズレを考慮してファイルを調整するフィルタを作成します。このフィルタはこの種のプリンタタイプにのみ必要なので、タイプ B プリンタでのみ機能するものとして指定します。

lpfilter のプリンタ引数

一般に、印刷フィルタはその出力を受け付けるどのプリンタでも機能するので、通常はフィルタ定義のこの部分をスキップできます。

ただし、プリンタによっては、フィルタが生成する出力に適したものと適さないものがあります。たとえば、1 台のプリンタを高速出力専用にして、フィルタを通す必要がないファイルのみをそのプリンタに送信できます。同じタイプの他のプリンタは、印刷前に広範囲にフィルタを通す必要があるファイルに使用できます。

lpfilter のフィルタタイプ引数

LP 印刷サービスは、「フィルタのタイプ」で説明しているように、高速フィルタと低速フィルタを認識します。

印刷モードで (lp -y コマンドを使用して) 呼び出される低速フィルタは、印刷要求が出されたシステム上で実行しなければなりません。LP 印刷サービスはモード値を印刷サーバーに渡せません。ただし、ファイル内容形式 (lp コマンドの -T オプションの後で指定) を印刷サーバー上の内容形式と一致させることはできます。したがって、印刷サーバー上で特殊モードを有効にしたい場合は、LP 印刷サービスが入力タイプと出力タイプを一致することができる内容形式を指定しなければなりません。

lpfilter のオプション引数

オプションは、各種の情報をフィルタコマンドのコマンド行引数にどのように変換するかを指定します。この情報には、ユーザーからの (印刷要求を伴う) 指定、プリンタ定義、要求の処理に使用されるフィルタによって実装される仕様などを含めることができます。

テンプレートによる印刷フィルタオプションの定義

印刷フィルタオプションの定義には 13 個の情報源があり、それぞれが「キーワード」で表されています。各オプションは「テンプレート」内で定義されます。テンプレートとは、フィルタの特性値の 1 つに基づいてフィルタコマンドに渡されるオプションを定義する、フィルタ定義内のステートメントです。

フィルタ定義で指定するオプションには、13 個のキーワードをまったく使用しなくても、すべて使用しても、その一部を使用してもかまいません。また、完全なフィルタ定義に複数の定義が必要な場合は、1 つのキーワードを複数回指定することもできます。次の表に、印刷フィルタ定義におけるオプションを定義するための 13 個のキーワードを示します。

表 10–2 印刷フィルタオプションのキーワード

オプションの特性

キーワード 

パターン 

例 

内容形式 (入力) 

INPUT

内容形式

troff

内容形式 (出力) 

OUTPUT

内容形式

postscript, impress

プリンタタイプ 

TERM

プリンタタイプ

att495

プリンタ名 

PRINTER

プリンタ名

lp1

文字ピッチ 

CPI

四捨五入された 10 進数

10

行ピッチ 

LPI

四捨五入された 10 進数

6

ページ長 

LENGTH

四捨五入された 10 進数

66

ページ幅 

WIDTH

四捨五入された 10 進数

80

印刷ページ数 

PAGES

ページリスト

1-5,13-20

文字セット 

CHARSET

文字セット

finnish

フォーム名 

FORM

フォーム名

invoice2

部数 

COPIES

整数

3

特殊モード

MODES

モード

landscape

印刷フィルタ定義には、複数のテンプレートを含めることができます。複数のテンプレートを指定する場合は、1 行にコンマで区切って入力するか、先頭に Options: を付けて複数行に入力します。 接頭辞を含んでいる必要があります。

テンプレートの形式は次のとおりです。 keywordpattern = replacement

keyword は、フィルタの特定の特性に関して登録されたオプションのタイプを識別します。

pattern は、キーワードの特定のオプションです。

replacement は、キーワードが指定した値のときに発生する動作です。

特定のフィルタのオプションを定義する方法を示す例として、印刷サービススケジューラを使って次の条件でフィルタに印刷要求を割り当てたいものと仮定します。

上記の条件を指定するには、lpfilter コマンドのオプションとして次のテンプレートを与えます。


Options: OUTPUT impress=-I, OUTPUT postscript=-P

Options 行が長くなりすぎる場合は、次のように各テンプレートを別々の行に入れます。


Options: OUTPUT impress=-I
Options: OUTPUT postscript=-P 

どちらのテンプレートでも、keywordOUTPUT として定義されています。1 番目のテンプレートでは、パターンは impress で、replacement の値は -I です。2 番目のテンプレートでは、pattern の値は postscript で、replacement の値は -P です。

各種テンプレート (つまり、各キーワードの pattern 引数と replacement 引数) に与える値を見つけるには、次のことに注意する必要があります。

replacement オプションは、テンプレートの値をフィルタプログラムに与える方法を示します。通常はリテラルオプションですが、値の位置を示すプレースホルダのアスタリスク (*) が付いていることがあります。patternreplacement には、ユーザー入力オプションからフィルタオプションへの複雑な変換を行うために、ed コマンドの正規表現の構文を使用することもできます。ed の正規表現の構文は、\( ... \) および \n も含め、すべて使用できます。これらの構文を使用すると、pattern オプションの各部を抽出して replacement オプションにコピーできます。また、& オプション使用すると、pattern オプション全体を replacement オプションにコピーできます。詳細は、ed(1) のマニュアルページを参照してください。


注 –

pattern オプションまたは replacement オプションにコンマまたは等号 (=) を含める場合は、その前にバックスラッシュ (\) を付けてください。これらの文字の前のバックスラッシュは、pattern オプションまたは replacement オプションが使用されるときに削除されます。


Procedure新しい印刷フィルタを作成する方法

  1. 印刷サーバーで、スーパーユーザーになるか、同等の役割になります。

    役割には、認証と特権コマンドが含まれます。役割の詳細については、『Solaris のシステム管理 (セキュリティサービス)』「RBAC の構成 (作業マップ)」を参照してください。

  2. 印刷フィルタプログラムを作成します。

    印刷フィルタプログラムについては、「印刷フィルタプログラムの作成」を参照してください。通常、PostScript プリンタ用のフィルタプログラムは /usr/lib/lp/postscript ディレクトリに入っています。作成したプログラムは、選択したディレクトリ内の /usr/lib/lp ディレクトリの下に入れる必要があります。

  3. 印刷フィルタ定義を作成します。

    印刷フィルタ定義については、「印刷フィルタ定義の作成」を参照してください。印刷フィルタ定義はテキストファイルに保存する必要があります。使用しやすいように、通常、フィルタ定義は /etc/lp/fd ディレクトリに入っており、接尾辞 .fd で識別されます。

  4. 印刷フィルタを印刷サーバーに追加します。

    詳細は、「印刷フィルタを追加する方法」を参照してください。


例 10–7 新しい印刷フィルタの作成

次の例は、 N37 または Nlpsimple に変換するために使用する印刷フィルタ定義を示しています。


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) のすべてのプリンタで機能します。ユーザーは、用紙方向を縦モードにするか横モードにするかを尋ねるプロンプトが表示されたときに、それぞれの省略形 port または land を指定するだけですみます。これらのオプションは LP 印刷サービスに固有ではないので、ユーザーは lp -y コマンドを使用して指定しなければなりません。

新しい印刷フィルタを印刷サーバーに追加すると、印刷要求は次のように処理されます。


印刷フィルタの管理

印刷フィルタは、ファイルの内容形式を出力先プリンタが受け付けられる内容形式に変換するプログラムです。

LP 印刷サービスはフィルタを使用して、次の機能を提供します

すべての印刷フィルタが上記のすべての機能を実行できるわけではありません。各機能はプリンタに固有なので、別々に実装できます。

LP 印刷サービスは、表 10–3 に示す PostScript フィルタを提供します。これらのフィルタプログラムは、/usr/lib/lp/postscript ディレクトリに入っています。通常、PostScript 印刷を行う場合は、印刷サーバーの設定時にフィルタプログラムをインストールする以外に何も行う必要はありません。Solaris 印刷マネージャーが提供されるフィルタを自動的に使用可能にします。ただし、他のプリンタを管理する場合は、それらのプリンタの印刷フィルタを管理する必要がある場合があります。

印刷フィルタの作成

新しい印刷フィルタを作成するには、印刷フィルタプログラムを作成し、印刷フィルタの定義を作成する必要があります。フィルタには、入力形式、出力形式、そのフィルタ内でコマンド行引数を処理する言語を提供する複雑なオプションが入っています。説明と手順については、「新しい印刷フィルタの作成」を参照してください。

印刷フィルタの追加、変更、削除、および復元

印刷フィルタの追加、変更、削除、または復元は、印刷サーバーでだけ可能です。

lpfilter コマンドを使用すると、利用可能なフィルタを管理できます。フィルタに関するシステム情報は、/etc/lp/filter.table ファイルに格納されます。lpfilter コマンドは、テーブルに書き出すフィルタに関する情報を、フィルタ記述子ファイルから取得します。提供されているフィルタ記述子ファイル (PostScript のみ) は、/etc/lp/fd ディレクトリに入っています。実際のフィルタプログラムは、/usr/lib/lp ディレクトリに入っています。

LP 印刷サービスでは、定義できる印刷フィルタの数に制限はありません。使用しないフィルタを削除して LP 印刷サービスによる処理を減らすことができます。(LP は、特定の印刷要求に使用するフィルタを見つけるために、すべてのフィルタを検査します)。確信が持てない場合は、フィルタを削除しないでください。

フィルタを追加、変更、または削除すると、LP 印刷サービスによって提供されている元のフィルタの一部を上書きしたり、削除したりしてしまう可能性があります。必要に応じて元のフィルタセットを復元できます。また、追加したフィルタを削除することもできます。

SunOS ソフトウェアは、PostScript フィルタのデフォルトセットを提供しています。これらのフィルタは、Solaris 印刷マネージャーによって印刷サーバーに自動的に追加されます。LPD ベースの印刷サービスで使用されていた TranScript フィルタは、SunOS にも相当するものがある場合とない場合があります。次の表は、デフォルトの PostScript フィルタと、該当する TranScript フィルタが存在する場合はそのフィルタ名を示しています。

表 10–3 デフォルトの PostScript フィルタ

PostScript フィルタ 

動作 

相当する TranScript 

ダウンロード

フォントをダウンロードする 

 

dpost

ditroff から PostScript に変更

psdit

postdaisy

daisy から PostScript に変更

 

postdmd

dmd から PostScript に変更

 

postio

PostScript プリンタへのシリアルインタフェース 

pscomm

postior

プリンタとの通信 

 

postmd

マトリックス型グレースケールから PostScript に変換 

 

postplot

plot から PostScript に変更

psplot

postprint

simple から PostScript に変更

enscript

postreverse

ページの反転または選択 

psrev

posttek

TEK4014 から PostScript に変更

ps4014

SunOS ソフトウェアには、次のフィルタは組み込まれていません。

Enscript の代わりに postreversepostprintpostiodpost の各フィルタが組み込まれています。

Solaris 印刷マネージャーは、印刷サーバーにデフォルトの PostScript フィルタを追加します。これらのフィルタでは処理できない印刷を行う必要がある場合は、「新しい印刷フィルタを作成する方法」を参照してください。この節では、カスタム印刷フィルタの作成方法について説明します。

Procedure印刷フィルタを追加する方法

  1. 印刷サーバーで、スーパーユーザーになるか、同等の役割になります。

    役割には、認証と特権コマンドが含まれます。役割の詳細については、『Solaris のシステム管理 (セキュリティサービス)』「RBAC の構成 (作業マップ)」を参照してください。

  2. 印刷フィルタの定義に基づく印刷フィルタを追加します。


    # lpfilter -f filter-name -F filter-definition
    
    -f filter-name

    印刷フィルタ用に選択する名前を指定する

    -F filter-definition

    印刷フィルタの定義名を指定する

    詳細は、lpfilter(1M) のマニュアルページを参照してください。

    印刷フィルタは、印刷サーバーの /etc/lp/filter.table ファイルに追加されます。

  3. 印刷フィルタが追加されたことを確認します。


    # lpfilter -f filter-name -l
    

例 10–9 印刷フィルタを追加する

次の例は、daisytroff.fd 印刷フィルタ定義を持つ daisytroff 印刷フィルタを追加する方法を示しています。


# lpfilter -f daisytroff -F /etc/lp/fd/daisytroff.fd

Procedure印刷フィルタを削除する方法

  1. 印刷サーバーで、スーパーユーザーになるか、同等の役割になります。

    役割には、認証と特権コマンドが含まれます。役割の詳細については、『Solaris のシステム管理 (セキュリティサービス)』「RBAC の構成 (作業マップ)」を参照してください。

  2. 印刷フィルタを削除します。


    # lpfilter -f filter-name -x
    
    -f
    filter-name

    削除する印刷フィルタ名を指定する

    -x

    指定したフィルタを削除する

    印刷フィルタが、印刷サーバーの /etc/lp/filter.table ファイルから削除されます。

  3. フィルタが削除されたことを確認します。


    # lpfilter -f filter-name -l
    

    指定した名前のフィルタがないというエラーメッセージが表示されます。


例 10–10 印刷フィルタを削除する

次の例は、daisytroff 印刷フィルタを削除する方法を示しています。


# lpfilter -f daisytroff -x

Procedure印刷フィルタに関する情報を表示する方法

  1. 印刷サーバーで、スーパーユーザーになるか、同等の役割になります。

    役割には、認証と特権コマンドが含まれます。役割の詳細については、『Solaris のシステム管理 (セキュリティサービス)』「RBAC の構成 (作業マップ)」を参照してください。

  2. 印刷フィルタに関する情報を要求します。


    # lpfilter -f filter-name -l
    
    -f

    情報を表示したい印刷フィルタを指定する。利用できるすべての印刷フィルタに関する情報を表示するには、filter-nameall を指定する

    -l

    指定したフィルタに関する情報を表示する

    指定した 1 つ以上の印刷フィルタに関する情報が表示されます。


例 10–11 印刷フィルタに関する情報を表示する

次の例は、postdaisy 印刷フィルタに関する情報を要求する方法を示します。コマンドの出力例も示します。


# lpfilter -f postdaisy -l
Input types: daisy
Output types: postscript
Printer types: any
Printers: any
Filter type: slow
Command: /usr/lib/lp/postscript/postdaisy
Options: PAGES * = -o*
Options: COPIES * = -c*
Options: MODES group = -n2
Options: MODES group\=\([2-9]\) = -n\1
Options: MODES portrait = -pp
Options: MODES landscape = -pl
Options: MODES x\=\(\-*[\.0-9]*\) = -x\1
Options: MODES y\=\(\-*[\.0-9]*\) = -y\1
Options: MODES magnify\=\([\.0-9]*\) = -m\1


例 10–12 システム上のすべての印刷フィルタに関する情報を表示する

次の例は、システムに追加されたすべての印刷フィルタを表示する方法を示します。コマンドの出力例も示します。


# lpfilter -f all -l | grep Filter
(Filter "download")
Filter type: fast
(Filter "postio")
Filter type: fast
(Filter "postior")
Filter type: fast
(Filter "postreverse")
Filter type: slow


例 10–13 印刷フィルタに関する情報をリダイレクトする

次の例は、daisytroff フィルタに関する情報をファイルにリダイレクトする方法を示しています 。この作業は、うっかりフィルタ定義を削除してしまった場合に便利です。


# lpfilter -f daisytroff -l > daisytroff.fd

フォームの管理 (作業マップ)

作業 

説明 

参照先 

新しいフォーム定義を作成する 

9 個の必須特性に関する情報を入力し、新しいフォームの定義を提供する 

「新しいプリンタフォーム定義を作成する方法」

フォームへのユーザーアクセスを制限します。 

ネットワーク上で利用可能なプリンタおよびフォームへのユーザーアクセスを制限します。 

「フォームへのユーザーアクセスを制限する方法」

フォームを追加します。 

利用可能なフォームのリストにフォームの定義を追加し、LP 印刷サービスがフォームを認識できるようにします。 

「フォームを追加する方法」

フォームを削除します。 

LP 印刷サービスによって認識された、利用可能なフォームのリストからフォームの定義を削除します。 

「フォームを削除する方法」

フォームを装着します。 

mount コマンドを使用し、特定の定義を持つフォームに対する印刷要求を受け付けるよう、LP 印刷サービスに通知します。

「フォームを取り外し、装着する方法」

フォームの装着に関する警告を設定します。 

プリンタに装着されたフォームに関する警告を設定します。 

「フォームの装着を促す警告を設定する方法」

フォームに関する情報を表示します。 

/etc/lp/forms ディレクトリの内容を表示し、フォーム名およびその他のフォーム情報を参照します。

「フォームに関する情報を表示する方法」

フォームの現在の状態を表示します。 

lpforms コマンドを使用して、フォームの現在の状態を表示します。

「フォームの現在の状態を表示する方法」

フォームへのプリンタのアクセスを制限します。 

プリンタがアクセスできるフォームを制御します。 

「フォームへのプリンタアクセスを制限する方法」

新しいプリンタフォームの作成

新しいフォームを提供したい場合は、lpforms コマンドへの入力として 9 個の必須プリンタ特性 (ページ長とページ幅など) を指定し、その特性を定義しなければなりません。

LP 印刷サービスは、この情報を次の目的に使用します。

フォーム名は、14 文字以内の英数字と下線であれば、任意に選択して使用できます。情報は次の形式でなければなりません。


Page length: scaled-number
Page width: scaled-number
Number of pages: integer
Line pitch: scaled-number
Character pitch: scaled-number
Character set choice: character-set-name [,mandatory]
Ribbon color: ribbon-color
Comment:
informal notes about the form
Alignment pattern: [content-type] alignment pattern

省略可能な語、[,mandatory] は、ユーザーがフォームの文字セット選択を無効にできないことを意味します。content-type は位置揃えパターンを使用して指定できますが省略可能です。この値を指定すると、印刷サービスは必要に応じて使用し、ファイルにフィルタをかけて印刷する方法を決定します。

次の 2 つの例外を除いて、情報は任意の順序で指定できます。

すべての情報を指定する必要はありません。値を指定しないときは、次の表のデフォルト値が割り当てられます。lpforms コマンドを実行する前に、新しいフォームに関して次の情報を収集してください。

表 10–4 プリンタフォームのデフォルト値

値 

デフォルト 

説明 

ページ長 

66 行 

フォームの長さ、または複数ページのフォームの場合は各ページの長さ。この情報は、行数でもインチ単位やセンチメートル単位でもかまわない 

ページ幅 

80 列 

文字数、インチ数、またはセンチメートル数によるフォームの幅 

ページ数 

複数ページのフォームのページ数。LP 印刷サービスは、この数値と印刷フィルタ (利用できる場合) を使用して、位置揃えパターンを 1 つのフォームの長さに制限する。「位置揃えパターン」の説明を参照。フィルタが利用できない場合は、LP 印刷サービスは出力を打ち切らない 

行ピッチ 

1 インチあたり 6 行 

フォーム上の行間隔。これは「リーディング」とも呼ばれる。2 行間の間隔、つまりベースラインからベースラインまでの間隔を 1 インチまたは 1 センチあたりの行数で表す

文字ピッチ 

1 インチあたり 10 文字 

フォームに表示される文字間隔。文字の間隔を 1 インチまたは 1 センチあたりの文字数で表す 

文字セット選択肢 

任意 

このフォームに使用しなければならない文字セット、印字ホイール、またはフォントカートリッジ。ユーザーは、このフォームの使用時にも、各自の印刷要求に別の文字セットを選択できる。管理者は、単一の文字セットのみを使用するように指示することもできる 

リボンの色 

任意 

フォームを常に特定のカラーリボンで印刷しなければならない場合、LP 印刷サービスはどの色を使用すべきかを示す装着警告メッセージを表示できる 

コメント  

(デフォルトなし) 

ユーザーがフォームを理解する上で参考になる任意の情報。たとえば、フォーム名、そのバージョン、用途、または使用上の制限を示すことができる 

位置揃えパターン

(デフォルトなし) 

LP 印刷サービスが 1 枚のブランクフォームを埋めるために使用するサンプルファイル。フォームを装着するときに、このパターンを印刷して正しく位置揃えすることができる。また、印刷サービスに印刷方法が認識されるように、このパターンの内容形式を定義することもできる 


注 –

LP 印刷サービスは、位置揃えパターン内の重要な情報にマスクをかけようとしません。小切手を位置揃えするときなど、サンプルフォームに重要な情報を印刷したくない場合は、該当するデータにマスクをかける必要があります。LP 印刷サービスは、スーパーユーザーまたは lp としてログインしたユーザー以外は読み取れないように、位置揃えパターンを安全な場所に格納します。


フォーム情報を収集し終わったら、フォームを lpforms コマンドに入力します。lpforms コマンドに入力する前に、まず、この情報を別の編集可能なファイルに記録してください。そうすれば、プロンプトの後で個々の情報を入力しなくても、そのファイルを入力として使用できます。

Procedure新しいプリンタフォーム定義を作成する方法

  1. 印刷サーバーで、スーパーユーザーになるか、同等の役割になります。

    役割には、認証と特権コマンドが含まれます。役割の詳細については、『Solaris のシステム管理 (セキュリティサービス)』「RBAC の構成 (作業マップ)」を参照してください。

  2. フォーム定義ファイルを作成します。

    プリンタフォームの作成方法の概要については、「新しいプリンタフォームの作成」を参照してください。プリンタ定義はテキストファイルに保存してください。

  3. フォームを LP 印刷サービスに追加します。


    # lpadmin -p printer-name -M -f form-name
    
  4. フォームを印刷サーバーに追加します。

    手順については、「フォームを追加する方法」を参照してください。

フォームの管理

「フォーム」は、あらかじめ決められている形式に従って情報が印刷されている用紙です。普通紙と違って、通常、フォームにはテキストまたはグラフィックスが前もって印刷されています。フォームの一般的な例としては、企業のレターヘッド、送り状、小切手、領収書、ラベルなどがあります。

「フォーム」という用語には 2 つの意味があります。 一つは物理的な媒体 (用紙) という意味で、もう一つは LP 印刷サービスの形式を定義するソフトウェアという意味です。

LP 印刷サービスを使用すると、フォームの使用方法を制御できます。この節では、フォームの追加、変更、削除、装着、およびアクセス制限について説明します。

フォームの追加、変更、または削除

フォームを追加するときには、LP 印刷サービスに指示を与えて、そのフォームを利用可能なフォームのリストに加えます。また、フォームの記述と定義に必要な情報を与えなければなりません。フォームを追加するときに、その定義を入力できますが、はじめに定義を作成しておいて、ファイルに保存しておくことをお勧めします。ファイルを編集すれば、フォーム定義を変更できます。


注 –

LP 印刷サービスでは、フォーム定義は提供されません。


フォームを変更するには、異なる定義を持つフォームを追加し直さなければなりません。

LP 印刷サービスでは、定義できるフォームの数に制限はありません。ただし、不要なフォームは削除してください。不要なフォームがあると、印刷サービスに余計な負担をかける可能性があります。

Procedureフォームを追加する方法

  1. 印刷サーバーで、スーパーユーザーになるか、同等の役割になります。

    役割には、認証と特権コマンドが含まれます。役割の詳細については、『Solaris のシステム管理 (セキュリティサービス)』「RBAC の構成 (作業マップ)」を参照してください。

  2. フォーム定義に基づくフォームを追加します。


    # lpforms -f form-name -F /etc/lp/forms/form
    
    -f

    フォーム用に選択する名前を指定する

    -F /etc/lp/forms/ form

    フォームの定義名を指定する

    詳細は、lpforms(1M) のマニュアルページを参照してください。

    フォームは、印刷サーバーの /etc/lp/forms/form-name/describe ファイルに追加されます。

  3. 次のコマンドの出力をチェックして、フォームが追加されたことを確認します。


    # lpforms -f form-name -l
    

例 10–14 フォームを追加する

次の例は、medical.fmd フォーム定義を使用する medical フォームを追加する方法を示しています。


# lpforms -f medical -F /etc/lp/forms/medical.fmd

参照

フォームを使用する前に、そのフォームへのアクセスを 1 つ以上のプリンタに与えておかなければなりません。詳細は、「フォームへのプリンタアクセスを制限する方法」を参照してください。

Procedureフォームを削除する方法

  1. 印刷サーバーで、スーパーユーザーになるか、同等の役割になります。

    役割には、認証と特権コマンドが含まれます。役割の詳細については、『Solaris のシステム管理 (セキュリティサービス)』「RBAC の構成 (作業マップ)」を参照してください。

  2. フォームを削除します。


    # lpforms -f form-name -x
    
    -f

    削除するフォーム名

    -x

    指定したフォームを削除する

    フォームが /etc/lp/forms/form-name ファイルから削除されます。

    詳細は、lpforms(1M) のマニュアルページを参照してください。

  3. フォームが削除されたことを確認します。


    # lpforms -f form-name -l
    

    指定したフォーム名がないことを示すエラーメッセージが表示されます。


例 10–15 フォームを削除する

次の例は、medical フォームを削除する方法を示しています。


# lpforms -f medical -x

フォームの装着

フォームを印刷するには、プリンタに給紙し、コマンドを使用してフォームを「装着」する必要があります。このコマンドによって、プリンタに送られる印刷要求がこのフォーム定義を使用して印刷されることを LP 印刷サービスに通知します。

複数のフォームを使用する場合など、1 台のプリンタで異なる種類の印刷を行う場合には、次の作業を実行します。

フォームを装着するときには、正しく揃っているかどうかを確認してください。揃え方がフォームに対して定義されている場合は、フォームを装着した後でパターン印刷を繰り返すように要求できます。揃え方が正しくなるようにプリンタを調整し終わるまで、パターン印刷を繰り返します。

プリンタに取り付けられているフォームの使用を変更または中止したい場合は、フォームを取り外して LP 印刷サービスに通知しなければなりません。

Procedureフォームを取り外し、装着する方法

  1. 印刷サーバーで、スーパーユーザーになるか、同等の役割になります。

    役割には、認証と特権コマンドが含まれます。役割の詳細については、『Solaris のシステム管理 (セキュリティサービス)』「RBAC の構成 (作業マップ)」を参照してください。

  2. 現在のフォームを取り外そうとしているプリンタで印刷要求の受け入れを停止します。


    # reject printer-name
    

    printer-name とは、フォームを取り外すプリンタ名です。

    新しい印刷要求 (フォームを必要としない場合もある) は、そのプリンタの待ち行列に入れられなくなります。

  3. 現在のフォームを取り外します。


    # lpadmin -p printer-name -M -f none
    

    このコマンドの変数 printer-name は、手順 2 と同じです。

    現在のフォームは、印刷サーバーの /etc/lp/printers/printer-name/configuration ファイルから削除されます。

  4. プリンタからフォーム用紙を取り外します。

  5. 次の印刷要求のために新しいフォーム用紙を投入します。

  6. フォームを装着します。


    # lpadmin -p printer-name -M -f form-name[-a -o filebreak]
    -p

    フォームを装着するプリンタ名を指定する

    -M

    装着するフォーム名を指定する

    -a -o filebreak

    フォームに位置揃えパターンが定義されている場合は、そのコピーを印刷できるようにする

    -p printer-name

    フォームを装着するプリンタ名

    -M -f form-name

    装着するフォーム名

    指定したフォームは、印刷サーバーの /etc/lp/printers/printer-name/configuration ファイルに追加されます。

  7. プリンタ上で印刷要求の受け付けを開始します。


    # accept printer-name
    

    これで、プリンタは新しく装着したフォームで印刷する準備ができました。

  8. フォームが装着されたことを確認します。


    # lpstat -p printer-name -l
    

    あるいは、新しいフォームを必要とする印刷要求を出して、プリンタの出力をチェックします。


例 10–16 フォームの取り外し

次の例は、現在装着されているフォームをプリンタ luna から取り外すプロセスを示しています。


# reject luna
destination "luna" will no longer accept requests
# lpadmin -p luna -M f none
# accept luna
destination "luna" now accepting requests


例 10–17 フォームの装着

次の例は、medical フォームをプリンタ luna 上に装着するプロセスを示しています。


# reject luna
destination "luna" will no longer accept requests
# lpadmin -p luna -M f medical -a -o filebreak
# accept luna
destination "luna" now accepting requests

フォームの追跡

LP 印刷サービスにより、各プリンタにどのフォームが装着されているかを確認できます。また、フォームに印刷するときに必要な記述がなければ、LP 印刷サービスが通知します。フォームの記述を作成したり、各プリンタにフォームを装着したり取り外したりするのは、システム管理者の責任です。この作業は、プリンタの設定時か、LP 印刷サービスからの警告への対応時に行います。

ユーザーは印刷ジョブを印刷したいフォームを指定します。管理者は特定のフォームを装着して、フォームが使用できる状態にあり、どのプリンタに装着されているかを LP 印刷サービスに伝えます。ユーザーは特定のフォームを指定することによって印刷要求を出すことができます。LP 印刷サービスが要求を受け取ると、フォームの装着要求を警告メッセージとして管理者に送信します。

フォームの装着に関する警告の定義

LP 印刷サービスからのほかの警告を指定するのと同じ方法で、フォームを装着する際に出す警告を指定します。警告に関する一般的な情報については、「LP 印刷コマンドを使用したプリンタの障害回復の設定」を参照してください。

Procedureフォームの装着を促す警告を設定する方法

  1. 印刷サーバーで、スーパーユーザーになるか、同等の役割になります。

    役割には、認証と特権コマンドが含まれます。役割の詳細については、『Solaris のシステム管理 (セキュリティサービス)』「RBAC の構成 (作業マップ)」を参照してください。

  2. フォームの装着を促す要求警告を設定します。


    # lpforms -f form-name -A alert [-Q requests] [-W minutes]
    -f

    要求警告を設定したいフォーム名を指定します。

    -A alert

    フォームが要求されるときに出す警告の種類を指定します。有効な値は mailwritequiet などです。mail または write を選択すると、指定のフォームの装着を促す、あらかじめ定義された警告メッセージが表示されます。このメッセージには、このフォームを使用するように設定されている 1 つ以上のプリンタ名が含まれます。

    -Q requests

    このフォームを必要とする印刷要求がいくつ待ち行列に入ったら警告を出すかを指定します。このオプションを指定しなければ、印刷要求が待ち行列に 1 つ入っただけで警告が出されます。

    -W minutes

    警告が出される間隔 (分単位) を指定します。このオプションを指定しなければ、警告は一度だけ送られます。

    要求警告は、印刷サーバーの /etc/lp/forms/form-name/alert.sh ファイルに追加されます。

  3. フォームに関する警告が追加されていることを確認します。


    # lpforms -f form-name -A list
    

    あるいは、警告を出すまでの印刷要求の数を低く設定した場合、最低限の条件を満たす印刷要求を出してみます。フォームの装着を促す警告を受け取ることを確認します。


例 10–18 フォームの装着を促す警告を設定する

次の例は、印刷待ち行列に letterhead フォームに関する 10 の印刷要求があるときに 5 分ごとに電子メールで警告が送られるように設定する方法を示します。


# lpforms -f letterhead -A mail -Q 10 -W 5


例 10–19 コンソールウィンドウの警告の設定

次の例は、印刷待ち行列に letterhead フォームに関する 5 の印刷要求があるときに 10 分ごとにコンソールウィンドウに警告が送られるように設定する方法を示します。


# lpforms -f letterhead -A write -Q 5 -W 10


例 10–20 要求警告が送られないように設定する

次の例は、 invoice フォームに関して要求警告が送られないように設定する方法を示しています。


# lpforms -f invoice -A none

フォームのチェック

LP 印刷サービスに対してフォームを定義し終わったら、2 つのコマンドのどちらかでフォームの定義をチェックできます。どちらのコマンドを使用するかは、チェックしたい情報に応じて選択します。

既存のフォーム名がわからない場合は、/etc/lp/forms ディレクトリの内容の一覧を表示して調べることができます。

Procedureフォームに関する情報を表示する方法

  1. 印刷サーバーで、スーパーユーザーになるか、同等の役割になります。

    役割には、認証と特権コマンドが含まれます。役割の詳細については、『Solaris のシステム管理 (セキュリティサービス)』「RBAC の構成 (作業マップ)」を参照してください。

  2. フォームに関する情報を要求します。


    # lpforms -f form-name -l
    
    -f

    情報を表示したいフォームを指定します。利用できるすべてのフォームに関する情報を表示するには、form-nameall を指定します。

    -l

    指定したフォームを表示します。

    指定した 1 つ以上のフォームに関する情報が表示されます。


例 10–21 フォームに関する情報を表示する

次の例は、 medical フォームに関する情報を表示する方法を示しています。


# lpforms -f medical -l
Page length: 62
Page width: 72
Number of pages: 2
Line pitch: 6
Character pitch: 12
Character set choice: pica
Ribbon color: black
Comment:
Medical claim form

次の例は、medical フォームに関する情報をファイルにリダイレクトする方法を示しています。このコマンドは、このフォームのフォーム定義を作成します。このコマンドは、うっかりフォーム定義を削除してしまった場合に便利です。


# lpforms -f medical -l > medical.fmd

Procedureフォームの現在の状態を表示する方法

  1. 印刷サーバーにログインします。

  2. フォームの現在の状態に関する情報を要求します。


    $ lpstat -f form-name
    

    -f オプションは、現在の状態を表示したいフォーム名を指定します。すべてのフォームの現在の状態を表示するには、form-nameall を指定します。

    指定した 1 つ以上のフォームの現在の状態に関する情報が表示されます。


例 10–22 フォームの現在の状態を表示する

次の例は、 medical フォームの状態を表示する方法を示しています。


$ lpstat -f medical
form medical is available to you

フォームへのアクセスの制限

どのプリンタやユーザーが、ネットワーク上で利用可能な一部またはすべてのフォームを使用できるかを制御できます。たとえば、経理部に属するユーザーだけが小切手のフォームを印刷できるようにしたい場合があります。また、特定のプリンタだけで利用できる小切手のフォームが必要な場合もあります。

詳しくは、「フォームへのユーザーアクセスを制限する方法」 を参照してください。フォームへのプリンタアクセスを制限するには、「フォームへのプリンタアクセスを制限する方法」を参照してください。

Procedureフォームへのユーザーアクセスを制限する方法

  1. 印刷サーバーで、スーパーユーザーになるか、同等の役割になります。

    役割には、認証と特権コマンドが含まれます。役割の詳細については、『Solaris のシステム管理 (セキュリティサービス)』「RBAC の構成 (作業マップ)」を参照してください。

  2. フォームへのユーザーアクセスを許可または拒否します。


    # lpforms -f form-name -u allow:user-list | deny:user-list
    
    -f

    ユーザーアクセスの許可リストまたは拒否リストを作成するためのフォーム名を指定する

    -u allow:user-list

    ユーザーアクセス許可リストに追加するユーザー名。複数のユーザーログイン名を指定する場合は、空白またはコンマで区切る。空白を使用する場合は、ID のリストを引用符で囲む。

    表 6–6 に、user-list の有効値を示します。

    -u deny:user-list

    ユーザーアクセス拒否リストに追加するユーザー名。複数のユーザーログイン名を指定する場合は、空白またはコンマで区切る。空白を使用する場合は、ID のリストを引用符で囲む。表 6–6 に、user-list の有効値を示します。

    指定したユーザーが、印刷サーバーの次のどちらかのファイルの、指定されたフォーム用のユーザーアクセスリストに追加されます。

    • /etc/lp/forms/form-name/allow

    • /etc/lp/forms/form-name/deny

  3. ユーザーアクセスの許可リストおよび拒否リストが正しく設定されていることを確認します。


    # lpforms -f form-name -l
    

例 10–23 フォームへのユーザーアクセスを許可する

次の例は、ユーザー nathanmarcia にのみ check フォームへのアクセスを許可する方法を示しています。


# lpforms -f check -u allow:nathan,marcia


例 10–24 フォームへのユーザーアクセスを拒否する

次の例は、ユーザー jonessmith による dental フォームへのアクセスを拒否する方法を示しています。


# lpforms -f dental -u deny:jones,smith

Procedureフォームへのプリンタアクセスを制限する方法

  1. 印刷サーバーで、スーパーユーザーになるか、同等の役割になります。

    役割には、認証と特権コマンドが含まれます。役割の詳細については、『Solaris のシステム管理 (セキュリティサービス)』「RBAC の構成 (作業マップ)」を参照してください。

  2. プリンタでのフォームの使用を許可または拒否します。


    # lpadmin -p printer-name -f allow:form-list | deny:form-list
    
    -p

    フォームの許可リストまたは拒否リストを作成するプリンタ名を指定する。

    -f allow: form-list

    許可リストに追加するフォーム名を指定する。複数のフォーム名は空白またはコンマで区切る。空白で区切る場合は、フォーム名のリストを引用符で囲む。

    -f deny: form-list

    拒否リストに追加するフォーム名。複数のフォーム名は空白またはコンマで区切る。空白で区切る場合は、フォーム名のリストを引用符で囲む。

    指定した 1 つ以上のフォームは、印刷サーバーの次のどちらかのファイルの許可または拒否フォームリストに追加されます。

    • /etc/lp/printers/printer-name/form.allow

    • /etc/lp/printers/printer-name/form.deny

  3. 許可フォームリストおよび拒否フォームリストが正しく設定されたかを確認します。


    # lpstat -p printer-name -l
    

例 10–25 フォームへのプリンタアクセスを許可する

次の例は、プリンタ lunamedicaldental、および check の各フォームへのアクセスのみを許可する方法を示しています。


# lpadmin -p luna -f allow:medical,dental,check


例 10–26 フォームへのプリンタアクセスを制限する

この例は、プリンタ luna による medicaldentalcheck の各フォームへのアクセスを拒否する方法を示しています。


# lpadmin -p luna -f deny:"medical dental check"

フォントの管理 (作業マップ)

作業 

説明 

参照先 

ダウンロード済みの PostScript フォントのインストール 

プリンタで出力する大部分の印刷要求に特定のフォントを使用するときは、そのフォントを常時ダウンロードする。ネットワーク上でのフォントの送信を回避するため、プリンタ常駐フォントをすべて追加する 

「ダウンロードされた PostScript フォントをインストールする方法」

ホスト常駐の PostScript フォントのインストール 

多数のユーザーが共有するシステムに、ホスト常駐のフォントをインストールする。この方法は、多数のフォントを利用できるときや、これらのフォントがすべての印刷要求で使用されるとは限らないときに使用する 

「ホスト常駐 PostScript フォントをインストールする方法」

フォントの管理

レーザープリンタでは、PostScript 用のフォントをインストールして管理する必要がある可能性があります。多くのプリンタの場合、プリンタのインストール作業の一部としてフォントを設定します。

PostScript フォントは、プリンタかプリンタと通信を行うシステムのどちらかに、アウトライン形式で格納されます。文書の印刷時に、PostScript インタプリタは、アウトライン記述から適切な大きさの各文字を必要に応じて生成します。文書に必要なフォントが使用するプリンタに格納されていない場合は、文書が印刷される前にそのフォントをプリンタに転送しなければなりません。この転送処理を「フォントのダウンロード」といいます。

フォントは、次のいくつかの方法で格納または使用されます。

プリンタ常駐フォントの管理

ほとんどの PostScript プリンタは、プリンタ内蔵の ROM にフォントが搭載されています。プリンタによっては、追加フォントを格納するためのディスクが用意されています。プリンタをインストールするときに、そのプリンタ用のフォントリストにプリンタ常駐フォントを追加してください。プリンタ常駐フォントがわかっていれば、フォントをネットワーク経由で必要以上に転送することがなくなります。各プリンタには搭載されているフォントの独自のリストがあり、次のファイルに格納されています。


/etc/lp/printers/printer-name/residentfonts

プリンタを印刷サーバーに接続するときには、印刷サーバー上にあるフォントを residentfonts ファイル内のリストに含めるようにしてください。このファイルには、プリンタにダウンロードできるフォントも格納されていなければなりません。

プリンタ常駐フォントのリストが入っているファイルは、vi などのテキストエディタを使用して編集しなければなりません。

ホスト常駐フォントのダウンロード

PostScript の文書に、プリンタにロードされていないフォントに対する要求が含まれている場合は、ダウンロードフィルタがこの要求を管理します。ダウンロードフィルタは PostScript の文書作成規則を使用して、ダウンロードするフォントを決定します。

LP 印刷フィルタには、高速フィルタと低速フィルタがあります。「高速フィルタ」は、ファイルの印刷をすばやく準備します。高速フィルタはまた、フィルタ処理中にプリンタへのアクセスが必要です。「低速フィルタ」はファイルの変換に時間がかかります。ただし、低速フィルタの場合は、フィルタ処理中にプリンタにアクセスする必要はありません。低速フィルタの例には、ASCII 文書から PostScript 文書へのフィルタがあります。

「ダウンロードフィルタ」は高速フィルタです。このフィルタは、フォントが印刷サーバー上にある場合は、フォントを自動的にダウンロードします。また、ダウンロードフィルタを使用して、印刷サーバーにフォントを転送することもできます。そのためには、lp -y コマンドを使用して、ダウンロードフィルタを低速フィルタとして呼び出すための新しいフィルタテーブルのエントリを作成できます。あるいは、入力タイプを変更して、このフィルタの選択を強制することもできます。

ダウンロードフィルタは、次の 5 つの作業を実行します。

  1. PostScript の文書を検索して、要求されているフォントを判別します。これらの要求は、ヘッダコメントの PostScript 構造化コメント %%DocumentFonts: font1 font2 …で指定されます。

  2. プリンタ常駐フォントのリストを検索して、要求されたフォントをダウンロードしなければならないかどうかを判別します。

  3. フォントがプリンタ上になければ、ダウンロードフィルタはホスト常駐フォントのディレクトリテーブルを検索し、要求されたフォントが利用可能かどうかを判別します。この検索は、フィルタがマップから適切なファイル名を読み取って行ないます。

  4. そのフォントが利用可能であれば、ダウンロードフィルタはそのフォントのファイルを取り出し、印刷するファイルに追加します。

  5. ダウンロードフィルタは、フォント定義ファイルとソースファイルを PostScript プリンタに送ります。「ソースファイル」とは、印刷するファイルです。

ホスト常駐フォントのインストールと管理

フォントによっては、ホストシステムに格納されており、特定の印刷要求に応じてプリンタに転送されるものがあります。管理者は、システム上のすべてのユーザーが PostScript フォントを使用できるように管理する必要があります。そのためには、これらのフォントのインストール方法とインストール場所を知っておかなければなりません。フォントは名前で要求され、ファイルに格納されているので、LP 印刷サービスは「マップファイル」を持っています。マップファイルは、フォント名と、これらのフォントを格納しているファイル名を対応付けます。ホスト常駐フォントをインストールするときには、マップファイルとフォントリストの両方を更新しなければなりません。

PostScript プリンタで使用できるフォントは、管理者が作成したディレクトリに格納されます。ディレクトリは /usr/share/lib/hostfontdir/typeface/font です。この場合、変数 typeface は、palatinohelvetica などの名前に置き換えられます。また、変数 font は、bold italic などの属性名に置き換えられます。

Procedureダウンロードされた PostScript フォントをインストールする方法

  1. 印刷サーバーで、スーパーユーザーになるか、同等の役割になります。

    役割には、認証と特権コマンドが含まれます。役割の詳細については、『Solaris のシステム管理 (セキュリティサービス)』「RBAC の構成 (作業マップ)」を参照してください。

  2. /etc/lp/printers/printer-name ディレクトリに移動します。


    # cd /etc/lp/printers/printer-name
    

    変数 printer-name は、ダウンロードされた PostScript フォントをインストールするプリンタの名前です。

  3. residentfonts ファイルが存在しない場合は作成します。


    # touch residentfonts
    

    常時ダウンロードフォントを初めて追加する場合は、このファイルが存在しないことがあります。

  4. residentfonts ファイルを編集します。すべてのプリンタ常駐フォントと常時ダウンロードフォントを追加します。

Procedureホスト常駐 PostScript フォントをインストールする方法

  1. 印刷サーバーまたは印刷クライアントで、スーパーユーザーになるか、同等の役割になります。

    役割には、認証と特権コマンドが含まれます。役割の詳細については、『Solaris のシステム管理 (セキュリティサービス)』「RBAC の構成 (作業マップ)」を参照してください。

  2. hostfontdir ディレクトリを作成します。


    # cd /usr/share/lib
    
    1. /usr/share/libディレクトリに変更します。


      # cd /usr/share/lib
      
    2. hostfontdir ディレクトリが存在しない場合は作成します。


      # mkdir hostfontdir
      
    3. hostfontdir ディレクトリのアクセス権を 775 に変更します。


      # chmod 775 hostfontdir
      
  3. 新しい書体のディレクトリが存在しない場合は作成します。


    # mkdir typeface
    
  4. フォントファイルを適切なディレクトリにコピーします。


    # cp filename /usr/share/lib/hostfontdir/typeface/font
    
  5. マップファイルに、フォント名とフォントが格納されているファイル名を追加します。

    1. /usr/share/lib/hostfontdir ディレクトリに移動します。

    2. vi などのテキストエディタを使用して map ファイルを編集します。

      ファイルに追加したいフォントごとに 1 行ずつエントリを追加します。エントリには、フォント名、スペース 1 個、フォントが格納されているファイル名の順に入力します。次に例を示します。


      Palatino-Bold /usr/share/lib/hostfontdir/palatino/bold
      
    3. ファイルを保存します。

      適切なシステム上のマップファイルにサンプルエントリを入れておけば、ユーザーは各自の印刷ジョブに (たとえば、Palatino Bold などの) フォントを適用できます。このフォントを含む印刷要求をユーザーが出すと、LP 印刷サービスはそのファイルに /usr/share/lib/hostfontdir/palatino/bold ファイルのコピーを追加してから、プリンタに送信します。

  6. troff プログラムを使用している場合は、このフォント用の新しいフォント幅テーブルを標準 troff フォントディレクトリ内に作成する必要があります。