LOGPEN 構造体
LOGPEN 構造体は、ペンのスタイル、幅、色を定義します。ペンとは、直線や境界を描画するときに使われる描画オブジェクトです。 CPen::CreatePenIndirect 関数が LOGPEN 構造体を使います。
typedef struct tagLOGPEN { /* lgpn */
UINT lopnStyle;
POINT lopnWidth;
COLORREF lopnColor;
} LOGPEN;
パラメーター
lopnStyle
ペンのスタイルを指定します。 このメンバーには、次のいずれかの値を指定できます。PS_SOLID 実線のペンを作成します。
PS_DASH 破線のペンを作成します。 ペンの幅が 1 のときだけ有効です。
PS_DOT 点線のペンを作成します。 ペンの幅が 1 のときだけ有効です。
PS_DASHDOT 一点破線のペンを作成します。 ペンの幅が 1 のときだけ有効です。
PS_DASHDOTDOT 二点破線のペンを作成します。 ペンの幅が 1 のときだけ有効です。
PS_NULL null のペンを作成します。
PS_INSIDEFRAME 外接する四角形を指定する GDI 出力関数 (Ellipse メンバー関数、Rectangle メンバー関数、RoundRectメンバー関数、Pie メンバー関数、Chord メンバー関数など) により作成される閉じた図形の枠内に直線を描画するためのペンを作成します。 外接する四角形を指定しない GDI 関数 (LineTo メンバー関数など) にこのスタイルが使われると、ペンの描画領域は枠の中に限定されません。
ペンのスタイルが PS_INSIDEFRAME で、色が論理カラー テーブルの色に一致しない場合、ペンでは描画にディザー カラーが使用されます。 PS_SOLID のペン スタイルを使用して、ディザー カラーのペンを作成することはできません。 ペンの幅が 1 以下のときは、PS_INSIDEFRAME スタイルは PS_SOLID と同じになります。
Ellipse、Rectangle、および RoundRect 以外の関数によって生成される GDI オブジェクトに PS_INSIDEFRAME スタイルを使うと、線が指定された枠内に完全に収まらないことがあります。
lopnWidth
ペンの幅を論理単位で指定します。 lopnWidth メンバーが 0 のときは、現在のマップ モードにかかわらず、ラスター デバイス上でのペンの幅は 1 ピクセルになります。lopnColor
ペンの色を指定します。
解説
lopnWidth メンバーでは POINT 構造体の y の値は使われません。
必要条件
**ヘッダー:**wingdi.h