Функция _GDIPlus_PenCreate2

         Описание функции


_GDIPlus_PenCreate2

Создаёт объект карандаша, который использует атрибуты кисти

#Include <GDIP.au3>
_GDIPlus_PenCreate2($hBrush[, $nWidth = 1[, $iUnit = 2]])

Параметры

$hBrush Указатель на объект кисти, на котором будет основываться этот карандаш
$nWidth [необязательный] Ширина карандаша. Измеряется в единицах, указанных в параметре $iUnit
$iUnit [необязательный] Единицы измерения размера карандаша:
    0 - Универсальные координаты, нефизическая единица
    1 - Display units (Отображаемые единицы)
    2 - единица 1 пиксель
    3 - единица 1 пункт или 1/72 дюйма
    4 - единица 1 дюйм
    5 - единица 1/300 дюйма
    6 - единица 1 миллиметр

Возвращаемое значение

Успех:Возвращает указатель на новый объект Pen
Ошибка:Возвращает 0, либо:
Если ошибка DllCall(), устанавливает @error и @extended возвращённые вызовом DllCall()
$GDIP_STATUS содержит не нулевое значение кода ошибки

Примечания

После завершения использования объекта вызовите _GDIPlus_PenDispose, чтобы освободить ресурсы объекта

См. также

См. также

Искать GdipCreatePen2 в библиотеке MSDN

Пример

#include <GDIP.au3>
#include <GUIConstantsEx.au3>

_Example()

Func _Example()
    Local $hGUI, $hGraphics, $hHatchBrush, $hPen
    ; Координаты звезды
    Local $aPoints[11][2] = [[10], [313, 124], [225, 188], [258, 291], [170, 228], [82, 291], [115, 188], [27, 124], [136, 123], [170, 20], [204, 123]]

    ; Инициализирует библиотеку GDI+
    _GDIPlus_Startup()

    $hGUI = GUICreate("Карандаш на основе кисти", 400, 350)
    GUISetState()

    ; Создаёт графический объект из дескриптора окна
    $hGraphics = _GDIPlus_GraphicsCreateFromHWND($hGUI)
    _GDIPlus_GraphicsSetSmoothingMode($hGraphics, $SmoothingModeAntiAlias)

    ; Создаёт HatchBrush, используемый в карандаше
    $hHatchBrush = _GDIPlus_HatchBrushCreate($HatchStyleLargeConfetti, 0xFFFFFF00, 0xFFFF00DD)

    ; Создаёт карандаш на основе кисти
    $hPen = _GDIPlus_PenCreate2($hHatchBrush, 15)

    ; Рисует замкнутую линию, звезду
    _GDIPlus_GraphicsDrawClosedCurve2($hGraphics, $aPoints, 0.5, $hPen)

    Do
    Until GUIGetMsg() = $GUI_EVENT_CLOSE

    ; Освобождает ресурсы
    _GDIPlus_PenDispose($hPen)
    _GDIPlus_BrushDispose($hHatchBrush)
    _GDIPlus_GraphicsDispose($hGraphics)

    ; Закрывает библиотеку GDI+
    _GDIPlus_Shutdown()
EndFunc