На главную

On-line справка по Win32 API

Написать письмо
БЕСПЛАТНАЯ ежедневная online лотерея! Выигрывай каждый день БЕСПЛАТНО!
Список всех статей A-B-C-D-E-F-G-H-I-J-K-L-M-N-O-P-Q-R-S-T-U-V-W-X-Y-Z | Скачать Вниз

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


Пригласи друзей и счет твоего мобильника всегда будет положительным!
Предыдущая статья
 
Сайт Народ.Ру Интернет
Следующая статья
Пригласи друзей и счет твоего мобильника всегда будет положительным!

EXTLOGPEN



Структура EXTLOGPEN определяет стиль ручки, ширины, и атрибуты щетки для расширенной ручки. Эта структура использована функцией GetObject когда она извлекает описание ручки, которая была создана когда приложение было названо функция ExtCreatePen.

typedef struct tagEXTLOGPEN { // exlp UINT elpPenStyle;
UINT elpWidth;
UINT elpBrushStyle;
elpColor COLORREF;
ДОЛГО (ДЛИНОЙ) elpHatch;
DWORD elpNumEntries;
DWORD elpStyleEntry[1];
} EXTLOGPEN;


Участники

elpPenStyle

Определяет комбинацию типа ручки, стиля, конечного стиля колпачка, и стиль соединения. Величины из каждой категории могут быть извлечены использованием поразрядным И с подходящей маской.
Член elpPenStyle замаскированный PS_TYPE_MASK имеет одну из величин типа ручки следующего:

Значение Величины
PS_GEOMETRIC ручка геометрическая.
PS_COSMETIC ручка косметическая.


Член elpPenStyle замаскированный PS_STYLE_MASK имеет одну из величин стилей ручки следующего:

Оцените Значение PS_SOLID, которое ручка твердая.
PS_DASH ручка броситься.
PS_DOT ручка точечная.
PS_DASHDOT ручка имеет изменять бросается и ставится точку.
PS_DASHDOTDOT ручка имеет изменять бросается и удваивает точки.
PS_NULL ручка невидимая.
PS_USERSTYLE ручка использует массив стилистической правки поставленный потребителем.
PS_INSIDEFRAME ручка твердая. Когда эта ручка использована в любом GDI, рисующий функцию, что берет прямоугольник bounding, измерения фигуры сжаты чтобы оно устанавливалось полностью в прямоугольнике bounding, принимающемся во внимание ширину ручки. Это относится только к ручкам PS_GEOMETRIC.


Следующая категория относится только к ручкам PS_GEOMETRIC. Член elpPenStyle замаскированный PS_ENDCAP_MASK имеет одну из величин конечного колпачка следующего:

Значение Величины
конечные колпачки Линии PS_ENDCAP_ROUND круглые.
конечные колпачки Линии PS_ENDCAP_SQUARE квадратные.
конечные колпачки Линии PS_ENDCAP_FLAT незначительные.


Следующая категория относится только к ручкам PS_GEOMETRIC. Член elpPenStyle замаскированный PS_JOIN_STYLE имеет одну из величин соединения следующего:

Значение Величины
соединения Линии PS_JOIN_BEVEL скошены.
соединения Линии PS_JOIN_MITER скошены когда они - в пределах текущего предела SetMiterLimit. Соединение скошено когда оно должно превысить предел.
соединения Линии PS_JOIN_ROUND круглые.


elpWidth

Определяет ширину ручки. Если член elpPenStyle определяет геометрические линии, эта величина является шириной, на логических устройствах, линии. В противном случае, линии являются косметикой и эта величина - 1.

elpBrushStyle

Определяет стиль щетки ручки. Величины члена elpBrushStyle могут быть одно из следующего:

Описание Величины
BS_DIBPATTERN Определяет щетку образца определенную машинонезависимым побитовым отображением (DIB) спецификацией. Если elpBrushStyle - BS_DIBPATTERN, член elpHatch содержит ручку на упакованный DIB.
BS_DIBPATTERNPT Определяет щетку образца определенную машинонезависимым побитовым отображением (DIB) спецификацией. Если elpBrushStyle - BS_DIBPATTERNPT, член elpHatch содержит указатель на упакованный DIB.
BS_HATCHED Определяет высиженную щетку.
BS_HOLLOW Определяет полую или НЕДЕЙСТВИТЕЛЬНУЮ щетку.
BS_PATTERN Определяет щетку образца определенную побитовым отображением памяти.
BS_SOLID Определяет твердую щетку.


elpColor

Если elpBrushStyle - BS_SOLID или BS_HATCHED, elpColor определяет цвет в котором ручка должна быть сделана. Для BS_HATCHED, SetBkMode и функции SetBkColor определяют цвет фона.
Если elpBrushStyle - BS_HOLLOW или BS_PATTERN, elpColor проигнорирован.
Если elpBrushStyle - BS_DIBPATTERN или BS_DIBPATTERNPT, младшее слово elpColor определяет содержат участники bmiColors структуры BITMAPINFO явные красные, зеленые, синие величины (RGB) или индексы в к настоящему времени реализовать логическую палитру. Величина elpColor должна быть одним из следующего:

Значение Величины
DIB_PAL_COLORS цветной стол состоит из массива 16- битовых индексов в к настоящему времени реализовать логическую палитру.
DIB_RGB_COLORS цветной стол содержит буквальные величины RGB.


elpHatch

Если elpBrushStyle - BS_PATTERN, elpHatch - ручка в побитовом отображении, которое определяет образец.

Если elpBrushStyle - BS_SOLID или BS_HOLLOW, elpHatch проигнорирован.
Если elpBrushStyle - BS_DIBPATTERN, член elpHatch является ручкой на упакованный DIB. Чтобы получать эту ручку, приложение называет функцию GlobalAlloc, чтобы распределять блока глобальной памяти затем заполнять память упакованным DIB. Упакованный DIB состоит из структуры BITMAPINFO немедленно сопровожденной массивом байтов, которые определяют пиксели побитового отображения.

Если elpBrushStyle - BS_DIBPATTERNPT, член elpHatch является указателем на упакованный DIB.
Если elpBrushStyle - BS_HATCHED, член elpHatch определяет ориентацию линий использованных, чтобы создавать люк. Это может быть любым из следующего величин:

Значение Величины
градусный вверх люк HS_BDIAGONAL 45- (слева направо) HS_CROSS Горизонтальная и вертикальная crosshatch степень HS_DIAGCROSS 45-crosshatch градусный вниз люк HS_FDIAGONAL 45- (слева направо) Горизонтальный люк HS_HORIZONTAL Вертикального люка HS_VERTICAL


elpNumEntries

Определяет номер данных в массиве стиля на члене elpStyleEntry. Эта величина является нулем если elpPenStyle не определяет PS_USERSTYLE.

elpStyleEntry

Определяет массив стиля поставленного потребителя. Массив определен конечной длиной, но использовано как будто повторено неопределенно. Первый вход в массиве определяет что длина сначала бросается. Второй вход определяет длину первого промежутка. Согласно этому, длины бросается и промежутки альтернативные.

Если elpWidth определяет геометрические линии, длины - на логических устройствах. В противном случае, линии являются косметикой и длины - на устройствах устройства.



Смотри Также

BITMAPINFO, ExtCreatePen, GetObject, GlobalAlloc, SetBkColor, SetBkMode


Вверх Version 1.3, Oct 26 2010 © 2007, 2010, mrhx Вверх
 mrhx software  Русский перевод OpenGL  Русский перевод Win32 API
 
Используются технологии uCoz