UDF > GDIPlus > LineBrush >


_GDIPlus_LineBrushSetSigmaBlend

Pour un pinceau à dégradé linéaire existant, définit la manière de mélanger les deux couleurs selon une courbe en forme de cloche

#include <GDIPlus.au3>
_GDIPlus_LineBrushSetSigmaBlend ( $hLineGradientBrush, $fFocus [, $fScale = 1] )

Paramètres

$hLineGradientBrush Handle de l'objet LinearGradientBrush
$fFocus Nombre compris entre 0.0 et 1.0 qui spécifie la zone dans laquelle la couleur est progressivement (mais pas linéairement!) fusionnée de la couleur de début à un pourcentage de la couleur de fin
$fScale [optionnel] Nombre compris entre 0.0 à 1.0 qui indique le pourcentage (/100) de la couleur de fin que le dégradé atteindra progressivement par fusion avec la couleur de début du dégradé.

Valeur de retour

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

Remarque

Cette fonction spécifie un focus, c'est-à-dire le point auquel le dégradé se compose uniquement de la couleur de fin. Le paramètre focus représente un emplacement sous la forme d'un pourcentage de la distance le long de la ligne de dégradé. Le dégradé varie dans le sens décroissant vers la couleur de début selon une courbe en forme de cloche (distribution normale) vers un des côtés.

Voir aussi

Consultez GdipSetLineSigmaBlend 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, 0xFF0000FF, 1) ; Crée un pinceau

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

    _GDIPlus_LineBrushSetSigmaBlend($hBrush, 0.333, .85)

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

    _GDIPlus_GraphicsDrawString($hGraphics, "w/o sigma blend", 14, 14)
    _GDIPlus_GraphicsDrawString($hGraphics, "w/ sigma blend", 314, 14)

    Do
    Until GUIGetMsg() = $GUI_EVENT_CLOSE

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