LOGPEN结构

LOGPEN结构具有如下形式:
typedef struct tagLOGPEN
{  /* lgpn */
   UINT     lopnStyle;
   POINT    lopnWidth;
   COLORREF lopnColor;
}  LOGPEN;

LOGPEN结构定义了画笔的风格、宽度和颜色,画笔是用于画出线条和边界的绘图对象。CPen::CreatePenIndirect函数使用LOGPEN结构。

成员:
lopnStyle指定了画笔的风格。这个成员可以是以下值之一:
·PS_SOLID创建实心的画笔。
·PS_DASH创建短线画笔。(仅当画笔宽度为1时有效)
·PS_DOT创建点线画笔。(仅当画笔宽度为1时有效)
·PS_DASHDOT创建点划线画笔。(仅当画笔宽度为1时有效)
·PS_DASHDOTDOT创建短线与两个点相间的画笔。(仅当画笔宽度为1时有效)
·PS_NUL创建空画笔。
·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,则不论当前的映射模式是什么,画笔在光栅设备上的宽度都是一个象素。
lopnColor指定画笔的颜色。

注释
lopnWidth成员中POINT结构的y值没有被使用。

请参阅:CPen::CreatePenIndirect