次の方法で共有


プリンター グラフィックス DLL によって定義されている関数

重要

プリンターデバイス開発におけるWindows 10および11での印刷体験をカスタマイズするために、MicrosoftのIPPインボックスクラスドライバーとPrint Support Apps (PSA)の使用を推奨します。

詳細については、プリントサポートアプリデザインガイド.

すべてのグラフィックス ドライバーと同様に、プリンター グラフィックス DLL は、次のグラフィックス DDI 関数を定義します。 最初のドライバー エントリ ポイントである DrvEnableDriver の後に、残りの関数がアルファベット順に一覧されます。 GDI は名前で DrvEnableDriver を呼び出すので、その名前は太字で表示されることに注意してください。 GDI は、DrvEnableDriver が返す関数ポインターの配列を使用して、他のすべてのディスプレイ ドライバー関数を呼び出します。

関数名: 説明
DrvEnableDriver ドライバーが自身を初期化し、サポートされているグラフィックス DDI 関数へのポインターを返すことができます。
DrvCompletePDEV デバイス インスタンスへの GDI ハンドルをドライバーに提供します。
DrvDisableDriver (省略可能) ドライバーがアンロードされる前にクリーンアップ操作を実行できるようにします。
DrvDisablePDEV ドライバーがデバイス インスタンス固有の情報を削除できるようにします。
DrvDisableSurface ドライバーが描画サーフェイスを削除できるようにします。
DrvEnablePDEV ドライバーが GDI に物理デバイス特性を提供し、デバイス インスタンス固有の情報を初期化できるようにします。
DrvEnableSurface ドライバーが描画サーフェイスを作成できるようにします。
DrvQueryDeviceSupport (省略可能) 要求されたデバイス固有の情報を返します。
DrvQueryDriverInfo (省略可能) 要求されたドライバー固有の情報を返します。

プリンター グラフィックス DLL は、次の印刷固有のグラフィックス DDI 関数を定義する役割も果たします。これらの関数は、印刷ジョブのレンダリング中の特定の時点で呼び出されます。

機能 呼び出されるタイミング
DrvEndDoc GDI がレンダリングのためにドライバーへのドキュメントの送信を完了したとき。
DrvNextBand (省略可能) GDI が物理ページのバンドの描画を完了すると、ドライバーはプリンターにバンドを送信できます。
DrvQueryPerBandInfo (省略可能) GDI が物理ページのバンドの描画を開始する前に、ドライバーが GDI にバンド固有の情報を提供できるようにします。
DrvSendPage GDI が物理ページの描画を完了すると、ドライバーはプリンターにページを送信できます。
DrvStartBanding (省略可能) GDI がレンダリングのために物理ページのバンドをドライバーに送信し始める準備ができたとき。
DrvStartDoc GDI がレンダリングのためにドライバーへのドキュメントの送信を開始する準備ができたとき。
DrvStartPage GDI がレンダリングのためにドライバーへのドキュメント ページの送信を開始する準備ができたとき。

通常、プリンター グラフィック DLL は、印刷ジョブのレンダリングを実行するために必要な追加のグラフィック DDI 関数も定義します。 定義される関数の数と種類は、次によって異なります。

  • ドライバーが GDI 管理またはデバイス管理の描画サーフェス (あるいはその両方) の使用をサポートしているかどうか。 詳細については、「サーフェイス タイプ」を参照してください。

  • 描画操作をドライバー自体によって実行されるのではなく、GDI によって処理できる程度。 詳細については、「グラフィックス DDI の使用」を参照してください。

プリンター グラフィックス DLL で定義されているすべての関数は、GDI のカーネル モード グラフィックス レンダリング エンジン (GRE) によって呼び出されます。

DrvEnableDriver 関数と DrvQueryDriverInfo 関数は、グラフィックス DLL によってエクスポートされます。 サポートされている他のすべてのグラフィックス DDI 関数のアドレスは、DrvEnableDriver 関数によって返されるテーブルに配置されます。