Funktionsreferenz

_GDIPlus_GraphicsDrawImageRectRect

Zeichnet ein Bild-Objekt und vergrößert, bzw. verkleinert dieses, falls gewünscht

#Include <GDIPlus.au3>
_GDIPlus_GraphicsDrawImageRectRect($hGraphics, $hImage, $iSrcX, $iSrcY, $iSrcWidth, $iSrcHeight, $iDstX, $iDstY, $iDstWidth, $iDstHeight[, $iUnit = 2])

 

Parameter

$hGraphics Handle zu einem Grafik-Objekt
$hImage Handle zu einem Bild-Objekt
$iSrcX Die X Koordinate der oberen linken Ecke des Quellbildes
$iSrcY Die Y Koordinate der oberen linken Ecke des Quellbildes
$iSrcWidth Breite des Quellbildes
$iSrcHeight Höhe des Quellbildes
$iDstX Die X Koordinate der oberen linken Ecke des Zielbildes
$iDstY Die Y Koordinate der oberen linken Ecke des Zielbildes
$iDstWidth Breite des Zielbildes
$iDstHeight Höhe des Zielbildes
$iUnit [optional] Legt die Maßeinheit des Bildes fest

 

Rückgabewert

Erfolg: True
Fehler: False

 

Bemerkungen

Keine.

 

Verwandte Funktionen

 

Siehe auch

Suche in der MSDN Bibliothek nach GdipDrawImageRectRectI

 

Beispiel


#include <GuiConstantsEx.au3>
#include <GDIPlus.au3>
#include <ScreenCapture.au3>

Opt('MustDeclareVars', 1)

_Main()

Func _Main()
    Local $hGUI1, $hGUI2, $hImage, $hGraphic1, $hGraphic2

    ; Screenshot vom linken oberen Bereich des Bildschirms speichern
    _ScreenCapture_Capture (@MyDocumentsDir & "\GDIPlus_Image.jpg", 0, 0, 400, 300)
   
    ; Erstellt ein GUI für das Originalbild
    $hGUI1 = GUICreate("Original", 400, 300, 0, 0)
    GUISetState()

    ; Erstellt ein GUI für das vergrößerte Bild
    $hGUI2 = GUICreate("Vergrößert", 400, 300, 0, 400)
    GUISetState()

    ; Initialisiert (startet) Microsoft Windows GDI+ und lädt das Bild
    _GDIPlus_Startup ()
    $hImage = _GDIPlus_ImageLoadFromFile (@MyDocumentsDir & "\GDIPlus_Image.jpg")

    ; Zeichne das Originalbild
    $hGraphic1 = _GDIPlus_GraphicsCreateFromHWND ($hGUI1)
    _GDIPlus_GraphicsDrawImage ($hGraphic1, $hImage, 0, 0)

    ; Zeichne das vergrößerte Bild (2fach Zoom)
    $hGraphic2 = _GDIPlus_GraphicsCreateFromHWND ($hGUI2)
    _GDIPlus_GraphicsDrawImageRectRect ($hGraphic2, $hImage, 0, 0, 200, 200, 0, 0, 400, 300)

    ; Ressourcen freigeben
    _GDIPlus_GraphicsDispose ($hGraphic1)
    _GDIPlus_GraphicsDispose ($hGraphic2)
    _GDIPlus_ImageDispose ($hImage)
    _GDIPlus_Shutdown ()

    ; Screenshot-Datei löschen
    FileDelete(@MyDocumentsDir & "\GDIPlus_Image.jpg")

    ; Die Schleife wiederholt sich, bis der Benutzer die Beenden-Aktion der GUI auslöst
    Do
    Until GUIGetMsg() = $GUI_EVENT_CLOSE

EndFunc   ;==>_Main