Dessine une image
#include <GDIPlus.au3>
_GDIPlus_GraphicsDrawImagePointsRect ( $hGraphics, $hImage, $nULX, $nULY, $nURX, $nURY, $nLLX, $nLLY, $nSrcX, $nSrcY, $nSrcWidth, $nSrcHeight [, $hImageAttributes = 0 [, $iUnit = 2]] )
$hGraphics | Handle de l'objet Graphics |
$hImage | Handle de l'objet Image |
$nULX | La coordonnée X du coin supérieur gauche de l'image source |
$nULY | La coordonnée Y du coin supérieur gauche de l'image source |
$nURX | La coordonnée X du coin supérieur droit de l'image source |
$nURY | La coordonnée Y du coin supérieur droit de l'image source |
$nLLX | La coordonnée X du coin inférieur gauche de l'image source |
$nLLY | La coordonnée Y du coin inférieur gauche de l'image source |
$nSrcX | La coordonnée X du coin supérieur gauche de la portion de l'image source qui doit être dessinée |
$nSrcY | La coordonnée Y du coin supérieur gauche de la portion de l'image source qui doit être dessinée |
$nSrcWidth | La largeur de l'image source qui doit être dessinée |
$nSrcHeight | La hauteur de l'image source qui doit être dessinée |
$hImageAttributes | [optionnel] Handle de l'objet ImageAttributes qui spécifie les attributs de couleur et de taille de l'image qui doit être dessinée |
$iUnit | [optionnel] Unité de mesure: 0 - Coordonnées mondiales, une unité non physique 1 - Unité d'affichage 2 - Unité de 1 pixel 3 - Unité de 1 point ou 1/72 pouce 4 - Unité de 1 pouce 5 - Unité de 1/300 pouce 6 - Unité de 1 millimètre |
Succès: | Retourne True. |
Échec: | Retourne False et définit @error <> 0, @extended contient le code erreur GPSTATUS ($GPID_ERR*). |
Consultez GdipDrawImagePointsRect dans la Librairie MSDN.
#include <GDIPlus.au3> #include <GUIConstantsEx.au3> #include <MsgBoxConstants.au3> Example() Func Example() ; Support d'exécution X64 Local $sWow64 = "" If @AutoItX64 Then $sWow64 = "\Wow6432Node" ; Obtient le dossier d'installation de AutoIt Local $sRegPath = "HKLM\SOFTWARE" & $sWow64 & "\AutoIt v3\AutoIt" Local $sFile = RegRead($sRegPath, "InstallDir") & "\Examples\GUI\logo4.gif" If Not FileExists($sFile) Then MsgBox(BitOR($MB_SYSTEMMODAL, $MB_ICONHAND), "", $sFile & " not found!", 30) Return False EndIf _GDIPlus_Startup() Local $hImage = _GDIPlus_ImageLoadFromFile($sFile) ; Crée un objet image lié à un fichier If @error Then _GDIPlus_Shutdown() MsgBox(BitOR($MB_SYSTEMMODAL, $MB_ICONHAND), "", "An error has occured - unable to load image!", 30) Return False EndIf Local $hGUI, $hGraphic, $iImgW, $iImgH ; Crée une GUI $hGUI = GUICreate("GDI+", 800, 400) GUISetState(@SW_SHOW) $hGraphic = _GDIPlus_GraphicsCreateFromHWND($hGUI) ; Crée un objet graphics à partir du handle d'une fenêtre $iImgW = _GDIPlus_ImageGetWidth($hImage) $iImgH = _GDIPlus_ImageGetHeight($hImage) _GDIPlus_GraphicsDrawImagePointsRect($hGraphic, $hImage, 100, 10, 300, 60, 90, 160, 0, 0, $iImgW * 0.45, $iImgH) _GDIPlus_GraphicsDrawImagePointsRect($hGraphic, $hImage, 300, 60, 360, 30, 290, 210, $iImgW * 0.45, 0, $iImgW * 0.2, $iImgH) _GDIPlus_GraphicsDrawImagePointsRect($hGraphic, $hImage, 360, 30, 560, 80, 350, 180, $iImgW * 0.65, 0, $iImgW * 0.35, $iImgH) Do Until GUIGetMsg() = $GUI_EVENT_CLOSE ; Libère les ressources _GDIPlus_ImageDispose($hImage) _GDIPlus_GraphicsDispose($hGraphic) _GDIPlus_Shutdown() GUIDelete($hGUI) EndFunc ;==>Example