XPS の印刷品質

XPS は、XML Paper Specification の略で、Microsoft が Windows Vista と共に開発した、Windows 内部の印刷サブシステムで使われるスプールファイル形式であり、電子ドキュメントの形式であり、また印刷ディバイス(プリンタや複合機)に送られるページ記述言語(PDL)でもある。この XPS 形式は、Vista より前の Windows で用いられている GDI(20年以上前に設計された)形式に比べ、スムーズ シェーディング、透過 (Transparency)、広い色域、タイポグラフィ等の改善が行われている。XPS 形式をネイティブに(他の PDL 形式に一度変換せずに)処理することにより、このリッチなグラフィックスの恩恵を最大化することができる。



Windows Vista の新しいグラフィックス アーキテクチャは、Windows Presentation Foundataion (WPF) と呼ばれる API の中にカプセル化されている。WPF アプリケーションは、XAML(ザムル)と呼ばれる言語を使用し、各アイテムのスクリーン表示をオペレーティング システムに指令している。Microsoft は、.NET 3.0 と呼ばれる開発ツールを含むフレームワークを提供し、XAML コードを生成している。XPS は、ページ付けされた固定形式の XAML のサブセットであり、XML ファイル形式で保存されており、ZIP 形式でラッピングされている。(尚、ZIP 内部の各コンポーネントの構成は、Open Packaging Conventions (OPC) により定義されている。)したがって、WPF 対応アプリケーションからの XPS ネイティブ印刷では、必然的に画面表示と印刷結果との忠実性を高くできる。



一方、XPS 未対応のプリンタ を使用する場合は、XPS-to-GDI Conversion Path (XGC) を用い、XPS 形式を GDI 形式に変換し、従来の GDI プリント ドライバを用い、印刷デバイスで解釈できる PDL 形式に変換して印刷できる。しかしながら、このプリントパスを使用した場合、XGC 変換パスを通過した時点で、XPS の多くのエンハンスメントが欠落し、更に GDI プリント ドライバ内部で EMF Spool ファイル形式からレガシー PDL 形式 (PCL/PostScript) に変換したときに、更に忠実性が失われる可能性が高い。



この様に WPF アプリケーションからの印刷では、変換を通すことにより、オリジナルドキュメントの品質の劣化が発生する可能性が高く、XPS 形式をネイティブに、印刷デバイス内で用いられる最終ラスターイメージ形式に直接変換することが好ましい。



備考:.NET 3.0 framework を Windows XP や Windows 2003 にインストールすることにより、これらの OS 上でも WPF アプリケーションが動作し、XPSDrv プリンタ ドライバを Vista と同様に使用できる。

コメント

非公開コメント