Функция _GDIPlus_LineBrushCreateFromRectWithAngle

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


_GDIPlus_LineBrushCreateFromRectWithAngle

Создаёт объект кисть с линейным градиентом из прямоугольника, граничных цветов и угла направления

#Include <GDIP.au3>
_GDIPlus_LineBrushCreateFromRectWithAngle($tRectF, $iARGBClr1, $iARGBClr2, $nAngle[, $fIsAngleScalable = True[, $iWrapMode = 0]])

Параметры

$tRectF Структура $tagGDIPRECTF, определяющая прямоугольник для кисти линейного градиента
$iARGBClr1 Цвет начала градиента (альфа-канал, красный, зелёный, синий)
$iARGBClr2 Цвет конца градиента (альфа-канал, красный, зелёный, синий)
$nAngle Угол, в градусах. Зависит от значения $fIsAngleScalable (см. примечания)
$fIsAngleScalable True - Угол направления линии является масштабируемый
False - Не масштабируемый
$iWrapMode Режим повтора, который определяет, как сопрягаются области.
0 - Плиткой, без зеркального отражения
1 - Плиткой с зеркальным отражением по горизонтали, как при перемещении от одной плитки к следующей в том же ряду
2 - Плиткой с зеркальным отражением по вертикали как при перемещении от одной плитки к следующей в том же столбце
3 - Плиткой с зеркальным отражением по горизонтали, как при перемещении в том же ряду и по вертикали как при перемещении в том же столбце
4 - Никакая плитка не помещается

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

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

Примечания

Если $fIsAngleScalable равен True, то $nAngle задаёт основной угол, из которого вычисляется угол направления линии. Иначе $nAngle задаёт угол направления линии. Угол измеряется от верхней линии прямоугольника и должен быть в градусах. Градиент следует за направлением линии.
После завершения использования объекта вызовите _GDIPlus_BrushDispose, чтобы освободить ресурсы объекта

См. также

Пример

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

_Example()

Func _Example()
    Local $hGUI, $hGraphics, $hBrush20, $hBrush120, $tRectF

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

    $hGUI = GUICreate("Кисть градиента с заданным углом", 420, 200)
    GUISetState()

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

    ; Создаёт структуру $tagGDIPRECTF, определяющую прямоугольник для кисти линейного градиента
    $tRectF = _GDIPlus_RectFCreate(0, 0, 50, 100)

    ; Создаёт кисть линейного градиента, который плавно изменяет цвет с красного на зеленый с углом 20 градусов
    $hBrush20 = _GDIPlus_LineBrushCreateFromRectWithAngle($tRectF, 0xFFFF0000, 0xFF00FF00, 20, True, 1)

    ; Создаёт кисть линейного градиента, который плавно изменяет цвет с красного на зеленый с углом 120 градусов
    $hBrush120 = _GDIPlus_LineBrushCreateFromRectWithAngle($tRectF, 0xFFFF0000, 0xFF00FF00, 120, True, 1)

    ; Заполняет прямоугольник кистью с линейным градиентом с углом 20 градусов
    _GDIPlus_GraphicsFillRect($hGraphics, 0, 0, 200, 200, $hBrush20)

    ; Заполняет прямоугольник кистью с линейным градиентом с углом 120 градусов
    _GDIPlus_GraphicsFillRect($hGraphics, 220, 0, 200, 200, $hBrush120)

    Do
    Until GUIGetMsg() = $GUI_EVENT_CLOSE

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

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