UDF > GDIPlus > PathGradientBrush >


_GDIPlus_PathBrushSetBlend

Définit les taux de mélande des couleurs et des positions associées d'un pinceau à couleurs dégradées de tracé

#include <GDIPlus.au3>
_GDIPlus_PathBrushSetBlend ( $hPathGradientBrush, $aBlends )

Paramètres

$hPathGradientBrush Handle de l'objet PathGradientBrush
$aBlends Tableau des taux de mélange et des positions associées:
    [0][0] - Le nombre de paires (taux, position), doit être d'au moins 2
    [1][0] - Taux 1
    [1][1] - Position 1
    [2][0] - Taux 2
    [2][1] - Position 2
    [n][0] - Taux n
    [n][1] - Position n

Valeur de retour

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

Remarque

Chaque Taux du tableau indique le pourcentage (/100) de la couleur de fin et doit être compris entre 0.0 et 1.0.
Chaque Position du tableau indique le pourcentage (/100) de la distance entre la frontière de début et la frontière de fin et doit être compris entre 0.0 et 1.0, où 0.0 indique la frontière de début du dégradé et 1.0 indique la frontière de fin.

Voir aussi

Consultez GdipSetPathGradientBlend dans la Librairie MSDN.

Exemple

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

Example()

Func Example()
    Local $hGUI = GUICreate("GDI+", 200, 180)
    GUISetState(@SW_SHOW)

    _GDIPlus_Startup()
    Local $hGraphics = _GDIPlus_GraphicsCreateFromHWND($hGUI)
    _GDIPlus_GraphicsSetSmoothingMode($hGraphics, $GDIP_SMOOTHINGMODE_HIGHQUALITY)
    _GDIPlus_GraphicsClear($hGraphics, 0xFF000000)

    Local $hPath = _GDIPlus_PathCreate()
    _GDIPlus_PathAddEllipse($hPath, 10, 10, 180, 160)

    Local $hBrush = _GDIPlus_PathBrushCreateFromPath($hPath)
    _GDIPlus_PathBrushSetCenterPoint($hBrush, 100, 90)
    _GDIPlus_PathBrushSetCenterColor($hBrush, 0xFFFF0000)

    Local $aBlend[4][2] = [[3]]
    $aBlend[1][0] = 0 ; 0% de couleur au centre
    $aBlend[1][1] = 0 ; position = frontière
    $aBlend[2][0] = 0.7 ; 70% de couleur au centre
    $aBlend[2][1] = 0.1 ; 10% de la distance frontière-> point central
    $aBlend[3][0] = 1 ; 100% de couleur au centre
    $aBlend[3][1] = 1 ; point central
    _GDIPlus_PathBrushSetBlend($hBrush, $aBlend)

    Local $aRect = _GDIPlus_PathBrushGetRect($hBrush)
    _GDIPlus_GraphicsFillRect($hGraphics, $aRect[0], $aRect[1], $aRect[2], $aRect[3], $hBrush)

    ; Boucle jusqu'à ce que l'utilisateur quitte.
    Do
    Until GUIGetMsg() = $GUI_EVENT_CLOSE

    ; Nettoie les ressources
    _GDIPlus_BrushDispose($hBrush)
    _GDIPlus_PathDispose($hPath)
    _GDIPlus_GraphicsDispose($hGraphics)
    _GDIPlus_Shutdown()
EndFunc   ;==>Example