Funktionreferenz


_GDIPlus_TextureCreate2

Beschreibung anzeigen in

Erzeugt ein TextureBrush-Objekt basierend auf ein Image, eines Wrappingmodus und eines definierenden Rechtecks

#include <GDIPlus.au3>
_GDIPlus_TextureCreate2 ( $hImage, $nX, $nY, $nWidth, $nHeight [, $iWrapMode = 0] )

Parameter

$hImage Ein Zeiger zu einem Image-Objekt
$nX Die linkeste Koordinate des Bildbereiches welches durch den Brush verwendet werden soll
$nY Die oberste Koordinate des Bildbereiches welches durch den Brush verwendet werden soll
$nWidth Die Breite des Brushs und die Breite des zu verwendenden Bildbereiches
$nHeight Die Höhe des Brushs und die Höhe des zu verwendenden Bildbereiches
$iWrapMode [optional] Der Wrapmodus welcher angibt, wie die sich wiederholenden Kopien eines Images verwendet werden sollen, um ein Bereich zu kacheln
    0 - Kacheln ohne Drehung
    1 - Kacheln werden horizontal gespiegelt, wenn man von einer Kachel zur nächsten in der selben Reihe geht
    2 - Kacheln werden vertikal gespiegelt, wenn man von einer Kachel zur nächsten in der selben Spalte geht
    3 - Kacheln werden horizontal gespiegelt, wenn man entlang einer Reihe geht, und vertikal gespiegelt, wenn man entlang einer Spalte geht.
    4 - Es wird nicht gekachelt

Rückgabewert

Erfolg: Ein Zeiger zu einem neuen TextureBrush-Objekt.
Fehler: 0 und setzt das @error Flag auf ungleich null. @extended kann den GPSTATUS Fehlercode ($GPID_ERR* siehe GDIPlusConstants.au3) enthalten.

Bemerkungen

Wenn die Arbeit mit dem Objekt abgeschlossen ist, sollte man _GDIPlus_BrushDispose() verwenden um die Objektressourcen freizugeben.

Verwandte Funktionen

_GDIPlus_BrushDispose

Siehe auch

Suche nach GdipCreateTexture2 in der MSDN Bibliothek.

Beispiel

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

Example()

Func Example()
    ; X64 running support
    Local $sWow64 = ""
    If @AutoItX64 Then $sWow64 = "\Wow6432Node"

    ;get AutoIt install dir
    Local $sRegPath = "HKLM\SOFTWARE" & $sWow64 & "\AutoIt v3\AutoIt"

    Local $sFile = RegRead($sRegPath, "InstallDir") & "\Examples\GUI\logo4.gif"
    If Not FileExists($sFile) Then
        MsgBox(($MB_ICONERROR + $MB_SYSTEMMODAL), "", $sFile & " not found!", 30)
        Return False
    EndIf

    _GDIPlus_Startup()
    Local $hImage = _GDIPlus_ImageLoadFromFile($sFile) ;create an image object based on a file
    If @error Then
        _GDIPlus_Shutdown()
        MsgBox(($MB_ICONERROR + $MB_SYSTEMMODAL), "", "An error has occured - unable to load image!", 30)
        Return False
    EndIf

    Local $hGUI = GUICreate("GDI+ Example (" & @ScriptName & ")", 320, 200)
    GUISetState(@SW_SHOW)

    Local $hGraphics = _GDIPlus_GraphicsCreateFromHWND($hGUI) ;create a Graphics object from a window handle
    _GDIPlus_GraphicsClear($hGraphics, 0xFF404040) ;clear graphic handle with dark grey (background)
    _GDIPlus_GraphicsSetSmoothingMode($hGraphics, $GDIP_SMOOTHINGMODE_HIGHQUALITY) ;sets the graphics object rendering quality (antialiasing)
    Local $hTexture = _GDIPlus_TextureCreate2($hImage, 5, 4, 59, 59) ;create texture brush only from a defined rectangle
    _GDIPlus_GraphicsFillEllipse($hGraphics, 10, 40, 300, 120, $hTexture) ;draw ellipse with texture as a brush

    Do
    Until GUIGetMsg() = $GUI_EVENT_CLOSE

    ;cleanup resources
    _GDIPlus_BrushDispose($hTexture)
    _GDIPlus_ImageDispose($hImage)
    _GDIPlus_GraphicsDispose($hGraphics)
    _GDIPlus_Shutdown()
    GUIDelete($hGUI)
EndFunc   ;==>Example