V4 プリンター ドライバー レンダリング アーキテクチャ
重要
Windows でプリンターとの通信手段として推奨されるのは、最新の印刷プラットフォームです。 プリンターデバイス開発におけるWindows 10および11での印刷体験をカスタマイズするために、MicrosoftのIPPインボックスクラスドライバーとPrint Support Apps (PSA)の使用を推奨します。
詳細については、最新の印刷プラットフォームに関する記事および「印刷サポート アプリの設計ガイド」を参照してください。
v4 プリンター ドライバー モデルのレンダリング アーキテクチャは XPSDrv アーキテクチャと同じです。XPS フィルター パイプラインも、以前のバージョンの Windows で使用されていたのと同じ設計に従っており、注目すべき点がいくつかあります。
レンダリング アーキテクチャ図
次の図は、v4 プリンター ドライバーのレンダリング アーキテクチャの選択肢を示しています。
次の段落では、前の図の IHV フィルターの役割について説明し、このレンダリング アーキテクチャ内で動作する機能を開発するためのガイドラインも示します。
印刷フィルター パイプライン構成ファイル
印刷フィルター パイプライン構成ファイルの形式は変更されません。 推奨される名前付け規則: vv<PDL>-pipelineconfig.xml。vv は製造元コードのプレースホルダーです。 fapcl6-pipelineconfig.xml の例。 XPS を印刷する Windows デスクトップ アプリケーションと互換性を持つために、印刷フィルター パイプライン構成ファイルはすべて –pipelineconfig.xml で終わる必要があります。
IHV レンダリング フィルター
このフィルターは、XPS からデバイス PDL 出力へのレンダリングを完了します。 必要に応じて、XPS ラスター化サービスまたはサードパーティの RIP を使用できます。 レンダリング フィルターを設計するためのガイドラインを次に示します。
推奨される入力の種類: IXpsDocumentProvider。 IXpsDocumentProvider インターフェイスの使用は、レンダリング プロセスを通じてシリアル化手順の多くのポイントが回避されるため、ストリーム インターフェイスを使用するよりも高速になります。
推奨される出力の種類: IPrintWriteStream。 このフィルターが完了したら、デバイス PDL をストリームとして出力する必要があります。
推奨される名前付け規則: vv<PDL>.dll を使用。 ここで、vv は製造元コードのプレースホルダーです。 例: Fabrikam 提供の PostScript レンダラーの faps.dll。
XPS を PDL として使用できるデバイスは、レンダリング フィルターなしでサポートされる場合があります。 ただし、一部のデバイスでは、Microsoft 標準 UI でうまく機能しない PrintTicket が必要になる場合があります。 このような場合、Microsoft では XPS レンダリング フィルターでデバイスと互換性のある PrintTicket に変換することをお勧めします。 これにより、標準 UI とデバイスとの最適な互換性が保証されます。
IHV 機能フィルター
IHV 機能フィルターを使用すると、N アップ、透かし、ページの並べ替えなどの機能を処理できます。 機能フィルターの使用は、基になる PDL レンダリングを変更せずに、ドライバーに機能を追加するのに便利な方法です。 このような機能フィルターを設計するためのガイドラインを次に示します。
推奨される入力の種類: IXpsDocumentProvider。
推奨される出力の種類: IXpsDocumentConsumer。
複数の IHV 機能フィルターを使用する製造元の場合は、これらのフィルターを個別の論理フィルターと同じ DLL に実装することをお勧めします。 これにより、コードの共有が促進され、印刷中のワーキング セット全体が減少する可能性があります。
色の管理
v4 印刷ドライバーでは、色の管理がサポートされています。 ドライバーには、Windows カラー システム (WCS) 準拠のカラー プロファイルまたはインターナショナル カラー コンソーシアム (ICC) のカラー プロファイルを含める必要があります。 V4 印刷ドライバーは、デバイス固有のカラー テーブルのドライバー プロパティ バッグを使用することもできます。