印刷機能アーキテクチャ
重要
Windows でプリンターとの通信手段として推奨されるのは、最新の印刷プラットフォームです。 プリンターデバイス開発におけるWindows 10および11での印刷体験をカスタマイズするために、MicrosoftのIPPインボックスクラスドライバーとPrint Support Apps (PSA)の使用を推奨します。
詳細については、最新の印刷プラットフォームに関する記事および「印刷サポート アプリの設計ガイド」を参照してください。
PrintCapabilities オブジェクトは、IPrintTicketProvider インターフェイスの印刷ドライバーの実装の IPrintTicketProvider::GetPrintCapabilities メソッドによって返されます。 XPSDrv 印刷ドライバーは、DrvDeviceCapabilities 関数に加えて IPrintTicketProvider インターフェイスを実装する必要があります。
以前の GDI ベースの印刷ドライバーを変更して PrintCapabilities ドキュメントを直接提供できますが、この変更は必要ありません。 Windows Vista 印刷サブシステムは、GDI ベースのドライバーを返す機能を追加しない XML PrintCapabilities ドキュメントを作成します。 ただし、Windows Vista 印刷サブシステムが作成する PrintCapabilities ドキュメントには、Microsoft Win32 関数 DeviceCapabilities がサポートするパラメーターの限られたセットのみが含まれています。 GDI ベースの印刷ドライバーでプリンターの機能の完全な一覧を提供するには、IPrintTicketProvider インターフェイスのサポートを含める必要があります。
次の一覧と図は、さまざまな種類の印刷ドライバーが印刷機能テクノロジをサポートする方法を示しています。
Unidrv または PScript5 印刷ドライバー
Windows Vista の ユニバーサル (Unidrv) および PostScript (PScript5) 印刷ドライバーに IPrintTicketProvider インターフェイスが追加されました。
Unidrv または PScript5 印刷ドライバー プラグイン
カスタム機能を持つ Unidrv および Pscript5 印刷ドライバーには、機能を追加または削除し、正確な PrintCapabilities ドキュメントを返すためにプラグインが必要です。 Unidrv および PScript5 印刷ドライバーのカスタム機能プラグインは、IPrintOemPrintTicketProvider インターフェイスをサポートする必要があります。
モノリシック GDI ベースおよび XPSDrv 印刷ドライバー
XPSDrv 印刷ドライバーは、IPrintTicketProvider インターフェイスをサポートする必要があります。 GDI ベースのモノリシック印刷ドライバーは、Win32 関数 DeviceCapabilities で提供されていないプリンター機能と機能を返すために、IPrintTicketProvider インターフェイスをサポートする必要があります。