_GDIPlus_LineBrushSetGammaCorrection
Включает или отключает гамма-коррекцию для кисти линейного градиента
#Include <GDIP.au3>
_GDIPlus_LineBrushSetGammaCorrection($hLineGradientBrush[, $fUseGammaCorrection = True])
Параметры
$hLineGradientBrush | Указатель на объект LinearGradientBrush |
$fUseGammaCorrection |
[необязательный] Флаг включения или отключения True - гамма-коррекция включена False - гамма-коррекция отключена |
Возвращаемое значение
Успех: | Возвращает True |
Ошибка: | Возвращает False, либо: |
Если ошибка DllCall(), устанавливает @error и @extended возвращённые вызовом DllCall() | |
$GDIP_STATUS содержит не нулевое значение кода ошибки. |
Примечания
По умолчанию при создании объекта LinearGradientBrush гамма-коррекция отключена.См. также
См. также
Искать GdipSetLineGammaCorrection в библиотеке MSDNПример
#include <GDIP.au3>
#include <GUIConstantsEx.au3>
_Example()
Func _Example()
Local $hGUI, $hGraphics, $hBrush
; Инициализирует библиотеку GDI+
_GDIPlus_Startup()
$hGUI = GUICreate("Гамма-коррекция", 420, 200)
GUISetState()
; Создаёт графический объект из дескриптора окна
$hGraphics = _GDIPlus_GraphicsCreateFromHWND($hGUI)
; Создаёт кисть линейного градиента, который плавно изменяет цвет с красного на синий
$hBrush = _GDIPlus_LineBrushCreate(0, 0, 0, 200, 0xFFFF0000, 0xFF0000FF, 1) ; Повторение кисти
; Заполняет прямоугольник кистью с линейным градиентом
_GDIPlus_GraphicsFillRect($hGraphics, 0, 0, 200, 200, $hBrush)
; Устанавливает гамма-коррекцию
_GDIPlus_LineBrushSetGammaCorrection($hBrush, True)
; Заполняет прямоугольник кистью линейного градиента, с применённой гамма-коррекцией
_GDIPlus_GraphicsFillRect($hGraphics, 220, 0, 200, 200, $hBrush)
Do
Until GUIGetMsg() = $GUI_EVENT_CLOSE
; Освобождает ресурсы
_GDIPlus_BrushDispose($hBrush)
_GDIPlus_GraphicsDispose($hGraphics)
; Закрывает библиотеку GDI+
_GDIPlus_Shutdown()
EndFunc