LINEATTRS 構造体 (winddi.h)
LINEATTRS 構造体は、ドライバーの線描画関数によって線属性を決定するために使用されます。
構文
typedef struct _LINEATTRS {
FLONG fl;
ULONG iJoin;
ULONG iEndCap;
FLOAT_LONG elWidth;
FLOATL eMiterLimit;
ULONG cstyle;
PFLOAT_LONG pstyle;
FLOAT_LONG elStyleState;
} LINEATTRS, *PLINEATTRS;
メンバー
fl
オプション フラグ。 このメンバーには、次のいずれかの値を指定できます。
フラグ | 説明 |
---|---|
LA_ALTERNATE | 特殊な化粧ラインスタイル。他のすべてのピクセルがオンです。 |
LA_GEOMETRIC | 幾何学的な広い線。 |
LA_STARTGAP | スタイル配列の最初のエントリは、最初のギャップの長さを指定します。 |
LA_STYLED | 線はスタイル付きの線です。 |
iJoin
幾何学的な幅の線の結合スタイルを指定します。 このメンバーには、次のいずれかの値を指定できます。
結合スタイル | 意味 |
---|---|
JOIN_BEVEL | 幅の広い線の結合エッジは面取りされます。 |
JOIN_MITER | 幅の広い線の結合エッジがマイタされます。 |
JOIN_ROUND | 幅の広い線の結合エッジは丸められます。 |
iEndCap
ジオメトリック幅の広い線のエンド キャップ スタイルを指定します。 このメンバーには、次のいずれかの値を指定できます。
エンド キャップ のスタイル | 意味 |
---|---|
ENDCAP_BUTT | エンド キャップは次の値です。 |
ENDCAP_ROUND | エンド キャップは丸められます。 |
ENDCAP_SQUARE | エンド キャップは正方形です。 |
elWidth
線の幅を示すFLOAT_LONGを指定します。 この幅は、幾何学的な広い線の場合は FLOAT ワールド座標で測定されますが、長整数型 (LONG) のデバイス座標では、化粧品の幅が広い線の場合は測定されます。 FLOAT_LONGデータ型の説明については、「 GDI データ型」を参照してください。
eMiterLimit
ミッター結合が内側のコーナーから外側の頂点まで延長できる線幅の倍数として制限を設定する FLOATL を指定します。 これにより、パスの線が非常に小さな角度で交わるときに、非常に長いスパイクが発生するのを防ぐことができます。 マイター制限を超えた場合は、代わりに面取り結合を使用する必要があります。 FLOATL データ型の説明については、「 GDI データ型」を参照してください。
このメンバーは、幾何学的な幅の広い線でのみ使用されます。
cstyle
pstyle メンバーが指すスタイル配列内のエントリの数を指定します。
pstyle
FLOAT_LONG要素の配列 (スタイル配列) へのポインター。 このメンバーが NULL の場合、線のスタイルは実線になります。 FLOAT_LONGデータ型の説明については、「 GDI データ型」を参照してください。
elStyleState
ドライバーがPATHOBJ_bEnumClipLinesを呼び出すたびに GDI によって提供される 16 ビット値のペアを含む FLOAT_LONGを指定します。 これら 2 つの値は、FLOAT_LONGにパックされ、最初のサブパスを開始するスタイル配列 (ピクセル) 内の場所を指定します。 行が実線でない場合は、出力ルーチンの一部としてこの値を更新する必要があります。 このメンバーは、化粧線にのみ適用されます
. 詳細については、「 スタイル付き装飾線 」も参照してください。
要件
要件 | 値 |
---|---|
Header | winddi.h (Winddi.h を含む) |