Définit le seuil (plage transparente) pour une catégorie spécifiée
#include <GDIPlus.au3>
_GDIPlus_ImageAttributesSetThreshold ( $hImageAttributes, $fThreshold [, $iColorAdjustType = $GDIP_COLORADJUSTTYPE_DEFAULT [, $bEnable = True]] )
$hImageAttributes | Un pointeur sur un objet ImageAttribute. |
$fThreshold | Le nombre réel qui spécifie la valeur du seuil. |
$iColorAdjustType | [optionnel] Elément de l'énumération ColorAdjustType qui spécifie la catégorie pour laquelle la couleur seuil est définie. La valeur par défaut est ColorAdjustTypeDefault. |
$bEnable | [optionnel] Valeur boolénne qui spécifie si un seuil est installé pour la catégorie spécifiée par le paramètre Type. La valeur par défaut est True. |
Succès: | Retourne True. |
Échec: | Retourne False et définit @error <> 0, @extended peut contenir le code d'erreur GPSTATUS ($GPID_ERR*). |
https://msdn.microsoft.com/en-us/library/8k0d325b(v=vs.110).aspx#Anchor_2
_GDIPlus_ImageAttributesCreate, _GDIPlus_ImageAttributesDispose, _GDIPlus_ImageAttributesSetColorMatrix
Consultez GdipSetImageAttributesThreshold dans la librairie MSDN.
#include <GDIPlus.au3> #include <GUIConstantsEx.au3> #include <ScreenCapture.au3> #include <WinAPIHObj.au3> Example() Func Example() _GDIPlus_Startup() Local Const $iW = @DesktopWidth / 2, $iH = @DesktopHeight / 2 Local $hGui = GUICreate("GDI+", $iW, $iH) GUISetState() Local $hGraphics = _GDIPlus_GraphicsCreateFromHWND($hGui) Local $hHBitmap = _ScreenCapture_Capture("", 0, 0, $iW, $iH) Local $hBitmap = _GDIPlus_BitmapCreateFromHBITMAP($hHBitmap) Local $hIA = _GDIPlus_ImageAttributesCreate() _GDIPlus_ImageAttributesSetThreshold($hIA, 0.6666) ;create black & white bitmap Local $tBWMatrix = _GDIPlus_ColorMatrixCreateGrayScale() Local $pBWMatrix = DllStructGetPtr($tBWMatrix) _GDIPlus_ImageAttributesSetColorMatrix($hIA, $GDIP_COLORADJUSTTYPE_DEFAULT, True, $pBWMatrix) _GDIPlus_GraphicsDrawImageRectRect($hGraphics, $hBitmap, 0, 0, $iW, $iH, 0, 0, $iW, $iH, $hIA) Do Until GUIGetMsg() = $GUI_EVENT_CLOSE _GDIPlus_ImageAttributesDispose($hIA) _WinAPI_DeleteObject($hHBitmap) _GDIPlus_GraphicsDispose($hGraphics) _GDIPlus_BitmapDispose($hBitmap) _GDIPlus_Shutdown() EndFunc ;==>Example