UDF > GDIPlus > Graphics >


_GDIPlus_GraphicsSetCompositingMode

Définit le mode de composition d'un objet Graphics

#include <GDIPlus.au3>
_GDIPlus_GraphicsSetCompositingMode ( $hGraphics, $iCompositionMode )

Paramètres

$hGraphics Handle de l'objet Graphics
$iCompositionMode Le mode de composition :
    0 - Indique que lorsqu'une couleur est affichée, elle est mélangée avec la couleur de fond.
    1 - Indique que lorsqu'une couleur est affichée, elle remplace la couleur de fond.

Valeur de retour

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

Remarque

En relation

_GDIPlus_GraphicsGetCompositingMode

Voir aussi

Consultez GdipSetCompositingMode dans la Librairie MSDN.

Exemple

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

Example()

Func Example()
    Local $hGUI, $hGraphic, $hBitmap, $hContext, $hBrush, $iMode1, $iMode2

    ; Crée GUI
    $hGUI = GUICreate("GDI+", 800, 400)
    GUISetState(@SW_SHOW)

    _GDIPlus_Startup()
    $hGraphic = _GDIPlus_GraphicsCreateFromHWND($hGUI) ; Crée un objet graphique à partir d'un handle fenêtre
    $hBitmap = _GDIPlus_BitmapCreateFromScan0(800, 400)
    $hContext = _GDIPlus_ImageGetGraphicsContext($hBitmap)

    $hBrush = _GDIPlus_LineBrushCreate(0, 0, 0, 400, 0xFF0000FF, 0)

    _GDIPlus_GraphicsFillRect($hContext, 10, 10, 300, 300, $hBrush)
    _GDIPlus_GraphicsFillRect($hContext, 80, 60, 300, 300, $hBrush)
    $iMode1 = _GDIPlus_GraphicsGetCompositingMode($hContext)

    _GDIPlus_GraphicsSetCompositingMode($hContext, $GDIP_CompositingModeSourceCopy)
    _GDIPlus_GraphicsFillRect($hContext, 420, 10, 300, 300, $hBrush)
    _GDIPlus_GraphicsFillRect($hContext, 490, 60, 300, 300, $hBrush)
    $iMode2 = _GDIPlus_GraphicsGetCompositingMode($hContext)

    _GDIPlus_GraphicsClear($hGraphic, 0xFFFFFFFF)
    _GDIPlus_GraphicsDrawImage($hGraphic, $hBitmap, 0, 0)

    _GDIPlus_GraphicsDrawString($hGraphic, "CompositingMode = " & $iMode1, 10, 380)
    _GDIPlus_GraphicsDrawString($hGraphic, "CompositingMode = " & $iMode2, 420, 380)

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

    ; Nettoie les ressources
    _GDIPlus_GraphicsDispose($hContext)
    _GDIPlus_BitmapDispose($hBitmap)
    _GDIPlus_BrushDispose($hBrush)
    _GDIPlus_GraphicsDispose($hGraphic)
    _GDIPlus_Shutdown()
EndFunc   ;==>Example