UDF > GDIPlus > Effect >


_GDIPlus_EffectCreateBlur

Crée un objet Effect qui agit sur le flou

#include <GDIPlus.au3>
_GDIPlus_EffectCreateBlur ( [$fRadius = 10.0 [, $bExpandEdge = False]] )

Paramètres

$fRadius [optionnel] Nombre réel qui spécifie le rayon de flou (le rayon du noyau de convolution gaussien) en pixels.
Le rayon doit être compris entre 0,0 et 255,0.
$bExpandEdge [optionnel] Valeur booléenne pour indiquer si la taille du bitmap augmente d'un montant égal au rayon de flou.
Si TRUE, l'image bitmap se dilate d'un montant égal au rayon de sorte qu'il peut y avoir des bords flous.
Si FALSE, le bitmap reste à la même taille et les contours flous sont tronquées.

Valeur de retour

Succès: Retourne le handle d'un objet Effect.
Échec: Retourne 0 et définit @error <> 0, @extended contient le code erreur GPSTATUS ($GPID_ERR*).
@error: -1 - GDIPlus.dll ne supporte pas cette fonction.
10 - Paramètres invalides.

Remarque

Lorsque vous en avez terminé avec l'objet Effect, appelez _GDIPlus_EffectDispose() pour libérer les ressources.

En relation

_GDIPlus_EffectCreate, _GDIPlus_EffectDispose

Exemple

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

_Example()

Func _Example()
    Local $sFile = FileOpenDialog("Sélectionnez une image", "", "Images (*.bmp;*.png;*.jpg;*.gif;*.tif)")
    If @error Or Not FileExists($sFile) Then Return

    If Not _GDIPlus_Startup() Then
        MsgBox($MB_SYSTEMMODAL, "ERROR", "GDIPlus.dll v1.1 not available")
        Return
    EndIf

    Local $hImage = _GDIPlus_ImageLoadFromFile($sFile)

    Local $iWidth = 600
    Local $iHeight = _GDIPlus_ImageGetHeight($hImage) * 600 / _GDIPlus_ImageGetWidth($hImage)

    Local $hGui = GUICreate("GDI+ v1.1", $iWidth, $iHeight)
    Local $hGraphics = _GDIPlus_GraphicsCreateFromHWND($hGui)
    GUISetState(@SW_SHOW)

    Local $hEffect = _GDIPlus_EffectCreateBlur()
    _GDIPlus_BitmapApplyEffect($hImage, $hEffect)

    _GDIPlus_GraphicsDrawImageRect($hGraphics, $hImage, 0, 0, $iWidth, $iHeight)

    Do
    Until GUIGetMsg() = $GUI_EVENT_CLOSE

    _GDIPlus_EffectDispose($hEffect)
    _GDIPlus_ImageDispose($hImage)
    _GDIPlus_GraphicsDispose($hGraphics)
    _GDIPlus_Shutdown()
EndFunc   ;==>_Example