typedef struct _LINEATTRS {
FLONG fl;
ULONG iJoin;
ULONG iEndCap;
FLOAT_LONG elWidth;
FLOAT eMiterLimit;
ULONG cstyle;
PFLOAT_LONG pstyle;
FLOAT_LONG elStyleState;
} LINEATTRS, *PLINEATTRS;
The LINEATTRS structure is used by a driver’s line-drawing functions to determine line attributes.
Members
fl
Option flags. This member can be one of the following values:
Flag | Meaning |
LA_GEOMETRIC | A geometric wide line. |
LA_ALTERNATE | A special cosmetic line style; every other pixel is on. |
LA_STARTGAP | The first entry in the style array specifies the length of the first gap. |
iJoin
Specifies join styles for geometric wide lines. This member can be one of the following values:
Join Style | Meaning |
JOIN_ROUND | The joining edges of wide lines are rounded. |
JOIN_BEVEL | The joining edges of wide lines are beveled. |
JOIN_MITER | The joining edges of wide lines are mitered. |
iEndCap
Specifies the end cap style for a geometric wide line. This member can be one of the following values:
End Cap Style | Meaning |
ENDCAP_ROUND | The end cap is rounded. |
ENDCAP_SQUARE | The end cap is square. |
ENDCAP_BUTT | The end cap is |
elWidth
Specifies the width of the line. This width is measured in FLOAT world coordinates for a geometric wide line, but in LONG device coordinates for a cosmetic wide line.
eMiterLimit
Sets the limit as a multiple of the line width that a miter join is allowed to extend from its inside corner to its outer vertex. This prevents very long spikes from occurring when lines of a path meet at very small angles. If the miter limit is exceeded, a bevel join should be used instead.
This member is used only by geometric wide lines.
cstyle
Specifies the number of entries in the style array.
pstyle
Points to the style array. If this member is null, the line style is solid.
elStyleState
A pair of 16-bit values supplied by GDI whenever the driver calls PATHOBJ_bEnumClipLines. These two values, packed into a LONG, specify where in the styling array (at which pixel) to start the first subpath. This value must be updated as part of the output routine if the line is not solid. This member applies to cosmetic lines only. Refer also to Styled Cosmetic Lines.
See Also
DrvStrokeAndFillPath, DrvStrokePath, PATHOBJ_vEnumStartClipLines