|
Overview |
|
|
|
Group |
|
|
|
Quick Info
Windows NT
| Yes
| Win95
| Yes
| Win32s
| No
| Import Library
| -
| Header File
| wingdi.h
| Unicode
| No
| Platform Notes
| None
|
|
|
EXTLOGPEN
The
EXTLOGPEN structure defines the pen style, width, and brush attributes for an extended
pen. This structure is used by the
GetObject function when it retrieves a description of a pen that was created when an
application called the
ExtCreatePen function.
typedef struct tagEXTLOGPEN { // exlp
UINT elpPenStyle;
UINT elpWidth;
UINT elpBrushStyle;
COLORREF elpColor;
LONG elpHatch;
DWORD elpNumEntries;
DWORD elpStyleEntry[1];
} EXTLOGPEN;
Members
elpPenStyle
Specifies a combination of pen type, style, end cap style, and join style. The
values from each category can be retrieved by using a bitwise AND with the
appropriate mask.
The
elpPenStyle member masked with PS_TYPE_MASK has one of the following pen type values:
Value
| Meaning
|
PS_GEOMETRIC
| The pen is geometric.
|
PS_COSMETIC
| The pen is cosmetic.
|
The
elpPenStyle member masked with PS_STYLE_MASK has one of the following pen styles values:
Value
| Meaning
|
PS_SOLID
| The pen is solid.
|
PS_DASH
| The pen is dashed.
|
PS_DOT
| The pen is dotted.
|
PS_DASHDOT
| The pen has alternating dashes and dots.
|
PS_DASHDOTDOT
| The pen has alternating dashes and double dots.
|
PS_NULL
| The pen is invisible.
|
PS_USERSTYLE
| The pen will use a styling array supplied by the user.
|
PS_INSIDEFRAME
| The pen is solid. When this pen is used in any GDI drawing function that takes
a bounding rectangle, the dimensions of the figure are shrunk so that it fits
entirely in the bounding rectangle, taking into account the width of the pen.
This applies only to PS_GEOMETRIC pens.
|
The following category applies only to PS_GEOMETRIC pens. The
elpPenStyle member masked with PS_ENDCAP_MASK has one of the following end cap values:
Value
| Meaning
|
PS_ENDCAP_ROUND
| Line end caps are round.
|
PS_ENDCAP_SQUARE
| Line end caps are square.
|
PS_ENDCAP_FLAT
| Line end caps are flat.
|
The following category applies only to PS_GEOMETRIC pens. The
elpPenStyle member masked with PS_JOIN_STYLE has one of the following join values:
Value
| Meaning
|
PS_JOIN_BEVEL
| Line joins are beveled.
|
PS_JOIN_MITER
| Line joins are mitered when they are within the current SetMiterLimit limit. A join is beveled when it would exceed the limit.
|
PS_JOIN_ROUND
| Line joins are round.
|
elpWidth
Specifies the width of the pen. If the
elpPenStyle member specifies geometric lines, this value is the width, in logical units,
of the line. Otherwise, the lines are cosmetic and this value is 1.
elpBrushStyle
Specifies the brush style of the pen. The
elpBrushStyle member values can be one of the following:
Value
| Description
|
BS_DIBPATTERN
| Specifies a pattern brush defined by a device-independent bitmap (DIB)
specification. If elpBrushStyle is BS_DIBPATTERN, the elpHatch member contains a handle to a packed DIB.
|
BS_DIBPATTERNPT
| Specifies a pattern brush defined by a device-independent bitmap (DIB)
specification. If elpBrushStyle is BS_DIBPATTERNPT, the elpHatch member contains a pointer to a packed DIB.
|
BS_HATCHED
| Specifies a hatched brush.
|
BS_HOLLOW
| Specifies a hollow or NULL brush.
|
BS_PATTERN
| Specifies a pattern brush defined by a memory bitmap.
|
BS_SOLID
| Specifies a solid brush.
|
elpColor
If
elpBrushStyle is BS_SOLID or BS_HATCHED,
elpColor specifies the color in which the pen is to be drawn. For BS_HATCHED, the
SetBkMode and
SetBkColor functions determine the background color.
If
elpBrushStyle is BS_HOLLOW or BS_PATTERN,
elpColor is ignored.
If
elpBrushStyle is BS_DIBPATTERN or BS_DIBPATTERNPT, the low-order word of
elpColor specifies whether the
bmiColors members of the
BITMAPINFO structure contain explicit red, green, blue (RGB) values or indexes into the
currently realized logical palette. The
elpColor value must be one of the following:
Value
| Meaning
|
DIB_PAL_COLORS
| The color table consists of an array of 16-bit indexes into the currently
realized logical palette.
|
DIB_RGB_COLORS
| The color table contains literal RGB values.
|
elpHatch
If
elpBrushStyle is BS_PATTERN,
elpHatch is a handle to the bitmap that defines the pattern.
If
elpBrushStyle is BS_SOLID or BS_HOLLOW,
elpHatch is ignored.
If
elpBrushStyle is BS_DIBPATTERN, the
elpHatch member is a handle to a packed DIB. To obtain this handle, an application
calls the
GlobalAlloc function to allocate a block of global memory and then fills the memory with
the packed DIB. A packed DIB consists of a
BITMAPINFO structure immediately followed by the array of bytes that define the pixels
of the bitmap.
If
elpBrushStyle is BS_DIBPATTERNPT, the
elpHatch member is a pointer to a packed DIB.
If
elpBrushStyle is BS_HATCHED, the
elpHatch member specifies the orientation of the lines used to create the hatch. It
can be any one of the following values:
Value
| Meaning
|
HS_BDIAGONAL
| 45-degree upward hatch (left to right)
|
HS_CROSS
| Horizontal and vertical crosshatch
|
HS_DIAGCROSS
| 45-degree crosshatch
|
HS_FDIAGONAL
| 45-degree downward hatch (left to right)
|
HS_HORIZONTAL
| Horizontal hatch
|
HS_VERTICAL
| Vertical hatch
|
elpNumEntries
Specifies the number of entries in the style array in the
elpStyleEntry member. This value is zero if
elpPenStyle does not specify PS_USERSTYLE.
elpStyleEntry
Specifies a user-supplied style array. The array is specified with a finite
length, but it is used as if it repeated indefinitely. The first entry in the
array specifies the length of the first dash. The second entry specifies the
length of the first gap. Thereafter, lengths of dashes and gaps alternate.
If
elpWidth specifies geometric lines, the lengths are in logical units. Otherwise, the
lines are cosmetic and lengths are in device units.
See Also
BITMAPINFO,
ExtCreatePen,
GetObject,
GlobalAlloc,
SetBkColor,
SetBkMode
- Software for developers
-
Delphi Components
.Net Components
Software for Android Developers
- More information resources
-
MegaDetailed.Net
Unix Manual Pages
Delphi Examples
- Databases for Amazon shops developers
-
Amazon Categories Database
Browse Nodes Database