Funktionreferenz


_GDIPlus_BitmapCreateHBITMAPFromBitmap

Beschreibung anzeigen in

Erstellt ein Handle zu einer Bitmap von einem Bitmap-Objekt

#include <GDIPlus.au3>
_GDIPlus_BitmapCreateHBITMAPFromBitmap ( $hBitmap [, $iARGB = 0xFF000000] )

Parameter

$hBitmap Handle zu einem Bitmap-Objekt
$iARGB [optional] Farbobjekt, welches die Hintergrundfarbe festlegt

Rückgabewert

Erfolg: ein Handle zu einem HBITMAP
Fehler: 0 und setzt das @error Flag auf ungleich null. @extended kann den GPSTATUS Fehlercode ($GPID_ERR* siehe GDIPlusConstants.au3) enthalten.

Bemerkungen

Wenn das Bitmap-Objekt nicht mehr benötigt wird, muss _WinAPI_DeleteObject() aufgerufen werden, um die Ressourcen wieder freizugeben.

Verwandte Funktionen

_WinAPI_DeleteObject

Siehe auch

Suche nach GdipCreateHBITMAPFromBitmap in der MSDN Bibliothek.

Beispiel

#include <GDIPlus.au3>
#include <GUIConstantsEx.au3>
#include <ScreenCapture.au3>
#include <WinAPIHObj.au3>

Example()

Func Example()
    Local $hBMP, $hImage, $iX, $iY, $hClone

    ; Initialisiert (startet) Microsoft Windows GDI+
    _GDIPlus_Startup()

    ; Erstellt vom kompletten Bildschirm einen Screenshot und erzeugt daraus eine 32 Bit Bitmap
    $hBMP = _ScreenCapture_Capture("")
    $hImage = _GDIPlus_BitmapCreateFromHBITMAP($hBMP)

    ; Erzeugt eine Kopie einer 24 Bit Bitmap
    $iX = _GDIPlus_ImageGetWidth($hImage)
    $iY = _GDIPlus_ImageGetHeight($hImage)
    $hClone = _GDIPlus_BitmapCloneArea($hImage, 0, 0, $iX, $iY, $GDIP_PXF24RGB)

    ; Speichert das Bild in eine Datei
    _GDIPlus_ImageSaveToFile($hClone, @TempDir & "\GDIPlus_Image.bmp")

    ; Ressourcen freigeben
    _GDIPlus_BitmapDispose($hClone)
    _GDIPlus_BitmapDispose($hImage)
    _WinAPI_DeleteObject($hBMP)

    ; Lädt ein Bild
    $hImage = _GDIPlus_ImageLoadFromFile(@TempDir & "\GDIPlus_Image.bmp")
    $hBMP = _GDIPlus_BitmapCreateHBITMAPFromBitmap($hImage)

    ; Speichert das Bild in eine Datei
    _ScreenCapture_SaveImage(@TempDir & "\Image.bmp", $hBMP, True) ; True -> $hBMP zerstört

    ; Ressourcen freigeben
    _GDIPlus_ImageDispose($hImage)

    ; Gibt die durch Microsoft Windows GDI+ verwendeten Ressourcen wieder frei
    _GDIPlus_Shutdown()
EndFunc   ;==>Example