PFN_DrvTextOut
コールバックシグネチャ
BOOL PFN_DrvTextOut(
SURFOBJ* param0,
STROBJ* param1,
FONTOBJ* param2,
CLIPOBJ* param3,
RECTL* param4,
RECTL* param5,
BRUSHOBJ* param6,
BRUSHOBJ* param7,
POINTL* param8,
DWORD param9
);パラメーター
| フィールド | 型 |
|---|---|
| param0 | SURFOBJ* |
| param1 | STROBJ* |
| param2 | FONTOBJ* |
| param3 | CLIPOBJ* |
| param4 | RECTL* |
| param5 | RECTL* |
| param6 | BRUSHOBJ* |
| param7 | BRUSHOBJ* |
| param8 | POINTL* |
| param9 | DWORD |
公式ドキュメント
DrvTextOut 関数は、指定された位置に一連のグリフを描画するようドライバーに要求する、GDI からのエントリポイントです。
戻り値
関数が成功した場合、戻り値は TRUE です。それ以外の場合は FALSE です。
解説(Remarks)
DrvTextOut への入力パラメーターは、前景 (foreground) と不透明 (opaque) という 2 つのピクセルの集合を定義します。ドライバーは、まず不透明ピクセルが不透明ブラシで描画され、続いて前景ピクセルが前景ブラシで描画される処理と同一の結果になるように、サーフェスを描画する必要があります。これらの各操作はクリッピングによって制限されます。
前景ピクセルと不透明ピクセルは、サーフェスへ色を塗り込むためのスクリーン (型枠) と見なされます。フォントのグリフ自体は色を持ちません。
DrvTextOut への入力パラメーターは、グリフピクセルの集合、追加の矩形の集合、不透明矩形、およびクリップ領域を定義します。前景ピクセルと不透明ピクセルの集合を計算し、描画するのはドライバーの役割です。
GDI は、DrvTextOut と DrvDestroyFont が重複して呼び出されることがないことを保証します。そのためドライバーは、DrvTextOut の呼び出しを処理する間、キャッシュされた情報に依存できます。
ミックスモードは、入力されるパターンをデバイスサーフェス上に既にあるデータとどのように混合するかを定義します。MIX データ型は、2 つの二項ラスターオペレーション (ROP2) の値を 1 つの ULONG にまとめたものです。最下位バイトは前景のラスターオペレーションを、その次のバイトは背景のラスターオペレーションを定義します。ラスターオペレーションコードの詳細については、Microsoft Windows SDK のドキュメントを参照してください。
これは条件付きで必須の関数です。
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)