目次
CUPSは、SUSE Linuxでの標準的な印刷システムです。CUPSは、特にユーザ中心の構造(ユーザ志向の設計)です。多くの状況ではLPRngとの互換性があるか、比較的少ない作業で適応させることができます。LPRngは、互換性を維持する理由でのみ、SUSE Linuxに付属しています。
プリンタは、インタフェース(USB、ネットワークなど)と、プリンタ言語によって区別できます。プリンタを購入するときは、ハードウェア(コンピュータ)がサポートしているインタフェースを採用していること、および適切なプリンタ言語が使用できることを確認してください。プリンタは、次の3つのプリンタ言語クラスに基づいて分類できます。
PostScriptは、LinuxとUnix環境のほとんどの印刷ジョブを生成する際に使用されるプリンタ言語であり、内部の印刷システムもこの言語を使用して処理を行います。この言語はかなり古いのですが、かなり効率的です。使用中のプリンタがPostScriptドキュメントを直接処理でき、印刷システム側で追加のステージを使用して変換を行う必要がない場合、潜在的なエラーの原因の数が減少します。PostScriptプリンタは多額のライセンスコストの対象になるので、通常、これらのプリンタは、PostScriptインタプリタを内蔵しないプリンタよりコストが高くなります。
これらのプリンタ言語はかなり古いのですが、プリンタで新機能を実現するために、引き続き拡張が行われています。既知のプリンタ言語の場合、印刷システムはGhostscriptの支援により、PostScriptのジョブを該当のプリンタ言語へ変換できます。この処理ステージを「解釈」(interpreting)と呼びます。非常によく知られている言語は、ほとんどのHPのプリンタおよび互換モデルが採用しているPCLと、Epsonのプリンタが採用しているESC/Pです。これらのプリンタ言語は、通常はLinuxによってサポートされていて、まずまずの印刷結果をもたらします。最新のプリンタや特殊なプリンタの機能は、Linuxがサポートしていないことがあります。オープンソースの開発者は、それらの機能に関してまだ作業をしている可能性もあります。HPが開発したhpijsドライバを除き、現時点では、Linuxドライバを開発してオープンソース条項に基づきそれらをLinuxのディストリビュータに提供しているプリンタメーカは存在しません。これらのプリンタのほとんどは、中間の価格帯にあります。
独自規格のプリンタでは通常、1つまたは複数のWindowsドライバだけが使用可能です。これらのプリンタは、一般的なプリンタ言語をどれもサポートしていませんし、これらのプリンタが使用しているプリンタ言語は、新しいモデルがリリースされた段階で変更される可能性もあります。詳細については、11.7.1項 「標準的なプリンタ言語をサポートしないプリンタ」を参照してください。
新しいプリンタを購入する前に、次の各ソース(情報源)を参照し、購入を予定しているプリンタがどの程度までサポートされているかをチェックしてください。
http://cdb.suse.de/—SUSE Linuxプリンタデータベース
http://www.linuxprinting.org/—LinuxPrinting.orgのプリンタデータベース
http://www.cs.wisc.edu/~ghost/—GhostscriptのWebページ
/usr/share/doc/packages/ghostscript/catalog.devices—付属するドライバのリスト
オンラインデータベースはいつでも、Linuxによるサポートの最新のステータスを示しています。しかし、Linuxのディストリビューションが統合できるのは、製造の時点で使用可能だったドライバだけです。したがって、現時点で「perfectly supported」 (完全にサポート済み)と評価されているプリンタであっても、最新バージョンのSUSE Linuxがリリースされた時点では、そのステータスに達していなかった可能性があります。そのため、これらのデータベースは必ずしも正しいステータスを表しているとは限らず、おおよその状況を提示するだけにとどまっています。
ユーザが印刷ジョブを作成します。印刷ジョブは、印刷するデータとスプーラに対する情報から構成されますが、その情報には、プリンタの名前またはプリンタキューの名前だけでなく、必要に応じて、プリンタ固有のオプションなど、フィルタに関する情報も含まれます。
すべてのプリンタには専用のプリンタキューが存在します。指定のプリンタがデータを受け取れるようになるまで、スプーラは印刷ジョブをキュー内に留めています。プリンタの準備が整うと、スプーラはフィルタおよびバックエンドを経由して、プリンタにデータを送信します。
フィルタを使用すると、ユーザが印刷するデータ(ASCII、PostScript、PDF、JPEGなど)がプリンタ固有のデータ(PostScript、PCL、ESC/Pなど)に変換されます。プリンタの機能については、PPDファイルに記述されています。PPDファイルには、プリンタ固有のオプションが記述されています。各オプションに対しては、プリンタでそのオプションを有効にするために必要なパラメータが指定されています。フィルタシステムは、ユーザが有効として選択したオプションを確認します。
PostScriptプリンタを選択すると、フィルタシステムがデータをプリンタ固有のPostScriptに変換します。この変換にプリンタドライバは必要ありません。PostScript非対応プリンタを使用すると、フィルタシステムがGhostscriptを使用して、データをプリンタ固有データに変換します。この変換には、使用しているプリンタに適応したGhostscriptプリンタドライバが必要です。バックエンドは、プリンタ固有データをフィルタから受信し、そのデータをプリンタに送信します。