LINEATTRS
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