DrvLineTo 関数 (winddi.h)

DrvLineTo 関数は、単一の単一の整数のみの化粧線を描画します。

構文

BOOL DrvLineTo(
  SURFOBJ  *pso,
  CLIPOBJ  *pco,
  BRUSHOBJ *pbo,
  LONG     x1,
  LONG     y1,
  LONG     x2,
  LONG     y2,
  RECTL    *prclBounds,
  MIX      mix
);

パラメーター

pso

描画するサーフェスを記述する SURFOBJ 構造体へのポインター。

pco

レンダリングを実行する必要があるクリップ領域を定義する CLIPOBJ 構造体へのポインター。 このクリップ領域の外側では、ピクセルは影響を受けなくなります。

pbo

線の描画時に使用するブラシを指定する BRUSHOBJ 構造体へのポインター。

x1

線の始点の x 座標の整数を指定します。

y1

線の始点の y 座標の整数を指定します。

x2

線の終点の x 座標の整数を指定します。

y2

線の終点の y 座標の整数を指定します。

prclBounds

クリップされていない行をバインドする整数の四角形を定義する RECTL 構造体へのポインター。 ハードウェア線描画をサポートするドライバーは、この四角形を使用して、線がハードウェアによってレンダリングされるのに十分な小さい座標空間に収まるかどうかを迅速に判断できます。

mix

ブラシに使用する前景と背景のラスター操作を定義するミックス モード。 DrvLineTo の呼び出しでは、前景と背景のラスター演算値は同じです。 ミックス モードの詳細については、「解説」を参照してください。

戻り値

成功した場合、DrvLineToTRUE を返します。それ以外の場合は、FALSE を返します

解説

DrvLineTo は、Win32 LineTo 関数へのアプリケーション呼び出しの最適化としてドライバーが提供できる省略可能なエントリ ポイントです。 ドライバーが DrvLineTo をフックしない場合、またはドライバーがこの関数の呼び出しから FALSE を 返した場合、GDI は代わりに DrvStrokePath を自動的に呼び出します。 DrvLineTo をフックしたドライバーは、レンダリング サーフェイスが DIB の場合に EngLineTo を呼び出すことができます。

この関数は、整数の終点と実線のみをサポートするため、 DrvStrokePath よりも単純です。 GDI では、DrvStrokePath ではなく DrvLineTo を呼び出すときのオーバーヘッドが少なくなります。したがって、DrvLineTo は、ハードウェアのわずかな幅線を加速できるドライバーによる単純な最適化として使用することを目的としています。

ミックス モードでは、受信パターンをデバイスサーフェイスに既に存在するデータと混合する方法を定義します。 MIX データ型は、1 つの ULONG にパックされた 2 つのバイナリ ラスター演算 (ROP2) 値で構成されます。 最下位バイトは、前景ラスター演算を定義します。次のバイトは、バックグラウンド ラスター演算を定義します。 ラスター演算コードの詳細については、Microsoft Windows SDKドキュメントを参照してください。

要件

   
対象プラットフォーム デスクトップ
Header winddi.h (Winddi.h を含む)

関連項目

BRUSHOBJ

CLIPOBJ

DrvStrokePath

EngLineTo

SURFOBJ