CLIPOBJ 構造体 (winddi.h)
CLIPOBJ 構造体は、描画時に使用されるクリップ領域を表します。
構文
typedef struct _CLIPOBJ {
ULONG iUniq;
RECTL rclBounds;
BYTE iDComplexity;
BYTE iFComplexity;
BYTE iMode;
BYTE fjOptions;
} CLIPOBJ;
メンバー
iUniq
クリップ領域を一意に識別する値を指定します。 iUniq が 0 以外の場合、ドライバーはそれをキャッシュ識別子として使用します。 これにより、ドライバーはリージョンをダウンロードしてキャッシュした後で認識できます。 値が 0 の場合、リージョンは再度使用されないため、ドライバーはリージョンをキャッシュしないでください。
rclBounds
図面と交差する領域の一部を境界とする RECTL 構造体を指定します。 iDComplexity がDC_RECT場合、これは考慮するクリッピング四角形です。
iDComplexity
図面と交差する領域の部分の複雑さを指定します。 このメンバーは、次のいずれかの値である必要があります。
値 | 説明 |
---|---|
DC_COMPLEX | クリップ領域を列挙する必要があります。 |
DC_RECT | 1 つの四角形にクリップします。 |
DC_TRIVIAL | クリッピングは考慮する必要はありません。図全体を描画します。 |
iFComplexity
リージョン全体の複雑さを指定します。 この値は、リージョンをキャッシュするかどうかを決定する際にドライバーによって使用されます。 CLIPOBJ_cEnumStart を呼び出して、領域内の四角形の正確な数を決定できます。 このメンバーには、次のいずれかの値を指定できます。
値 | 説明 |
---|---|
FC_COMPLEX | 領域は、4 つ以上の四角形で構成されます。 |
FC_RECT | 領域は 1 つの四角形です。 |
FC_RECT4 | 領域は、最大で 4 つの四角形で構成されます。 |
iMode
GDI で領域を格納する方法を指定します。 これは、ドライバーがリージョンを列挙する方法を決定するのに役立ちます。 このメンバーには、次のいずれかの値を指定できます。
値 | 説明 |
---|---|
TC_PATHOBJ | リージョンはパスとして格納されます。 |
TC_RECTANGLES | 領域は四角形として格納されます。 |
fjOptions
クリッピング オプションを指定します。 このメンバーには、次の値を指定できます。
値 | 説明 |
---|---|
OC_BANK_CLIP | 互換性のために残されています。 バンクされたデバイスのエンジン コールバックを示します。 |
解説
CLIPOBJ によって記述される領域は、一連の四角形として列挙できます。
要件
Header | winddi.h (Winddi.h を含む) |