ファイル変換

それぞれのプリンター (ローカルまたはリモート) ごとに、印刷可能なファイル・コンテンツ・タイプを指定できます。

ユーザーが印刷するファイルをプリンターに実行依頼し、そのコンテンツ・タイプを指定すると、印刷サービスはそのコンテンツ・タイプのファイルを処理できるプリンターを検索します。アプリケーションの多くはさまざまなプリンター用のファイルを生成できるので、たいていはこの機能で十分です。ただし、アプリケーションによっては、ご使用のプリンター上で印刷できないファイルを生成することがあります。

こうしたファイルをご使用のプリンターが処理できるタイプに変換するフィルターを定義し、作成することによって、印刷サービスのサポートするアプリケーションを増やすことができます。 (印刷サービスは、さまざまなタイプのファイルを PostScript に変換するためのフィルターをいくつか提供しています。) システムに追加するそれぞれのフィルターごとに、受け入れ可能な 1 つ以上の入力のタイプと、生成可能な出力のタイプ (通常はただ 1 つ) を指定する必要があります。

プリンターが処理できないファイル・コンテンツ・タイプをユーザーが指定すると (lp -T を実行して)、印刷サービスはファイルを受け入れ可能なタイプに変換できるフィルターの検索を試みます。印刷されるファイルがフィルターを通過した場合、印刷サービスはそのフィルターの出力タイプを、プリンター・タイプまたは別のフィルターの入力タイプと突き合わせます。印刷サービスは、このようにして出力タイプと入力タイプの突き合わせを続け、そのファイルを受け入れるプリンターに到達するまで、ファイルを一連のフィルターに通します。

例: HP DeskJet 500

この例では、ユーザー Chris がスプレッドシート・プログラムを実行し、スプレッドシートのコピーを含むファイルを生成しました。Chris は、印刷サービスを使用してこのファイルを印刷しようとしています。システムには HP DeskJet 500 プリンターのみがあります。 そのスプレッドシート・アプリケーションは数種類のプリンター用の出力を生成する機能を備えており、Chris は HP DeskJet 500 によって処理できる出力を要求する必要があることを理解しています。 Chris がファイルの印刷を実行依頼すると、印刷サービスはいずれかのプリンターのキューにそのファイルを入れます。フィルターは必要ありません。

例: Tektronix 4014 の出力

この例では、ユーザー Marty が Tektronix 4014 端末装置に表示できるグラフィック・イメージを作成しました。Marty はこのイメージを印刷しようとしていますが、プリンターはすべて PostScript プリンターです。システムには、Tektronix タイプのファイルを PostScript に変換する posttek というフィルターが用意されています。 プリンター・タイプを PostScript に設定することによって、印刷サービスは posttek フィルターを使用して Marty の出力を印刷前に変換できることを認識します。