UDF > GDIPlus > LineBrush >


_GDIPlus_LineBrushSetGammaCorrection

Active / désactive la correction gamma sur le rendu d'un pinceau à dégradé linéaire

#include <GDIPlus.au3>
_GDIPlus_LineBrushSetGammaCorrection ( $hLineGradientBrush [, $bUseGammaCorrection = True] )

Paramètres

$hLineGradientBrush Handle de l'objet LinearGradientBrush
$bUseGammaCorrection [optionnel] Si True, la correction gamma est activée, sinon elle est désactivée

Valeur de retour

Succès: Retourne True.
Échec: Retourne False et définit @error <> 0, @extended contient le code erreur ($GPID_ERR*).

Remarque

Par défaut, la correction gamma est désactivée lors de la création d'un objet LinearGradientBrush.
La correction gamma est souvent utilisée pour adapter l'intensité du contraste du dégradé avec la capacité de l'oeil humain à percevoir les changements d'intensité.

Voir aussi

Consultez GdipSetLineGammaCorrection dans la Librairie MSDN.

Exemple

#include <GDIPlus.au3>
#include <GUIConstantsEx.au3>

Example()

Func Example()
    _GDIPlus_Startup() ; Initialise GDI+
    Local Const $iWidth = 600, $iHeight = 300, $iBgColor = 0x303030 ; $iBGColor est au format RRGGBB

    Local $hGUI = GUICreate("GDI+ example", $iWidth, $iHeight) ; Crée une fenêtre de test
    GUISetBkColor($iBgColor, $hGUI) ; Définit la couleur de fond de la GUI
    GUISetState(@SW_SHOW)

    Local $hGraphics = _GDIPlus_GraphicsCreateFromHWND($hGUI) ; Crée un objet Graphics à partir du handle de la fenêtre
    _GDIPlus_GraphicsSetSmoothingMode($hGraphics, $GDIP_SMOOTHINGMODE_HIGHQUALITY) ; Définit pour l'objet graphique la qualité de rendu antialiasing
    Local $hBrush = _GDIPlus_LineBrushCreate(0, 0, 0, 280, 0xFFFFFF00, 0xFF4020FF, 1) ; Crée un pinceau à dégradé linéaire renversé

    _GDIPlus_GraphicsFillRect($hGraphics, 10, 10, 280, 280, $hBrush) ; Dessine le rectangle coloré

    _GDIPlus_LineBrushSetGammaCorrection($hBrush)

    _GDIPlus_GraphicsFillRect($hGraphics, 310, 10, 280, 280, $hBrush) ; Dessine le rectangle coloré

    _GDIPlus_GraphicsDrawString($hGraphics, "w/o gamma correction", 14, 14)
    _GDIPlus_GraphicsDrawString($hGraphics, "w/ gamma correction", 314, 14)

    Do
    Until GUIGetMsg() = $GUI_EVENT_CLOSE

    ; Nettoie les ressources GDI+
    _GDIPlus_BrushDispose($hBrush)
    _GDIPlus_GraphicsDispose($hGraphics)
    _GDIPlus_Shutdown()
    GUIDelete($hGUI)
EndFunc   ;==>Example