Функция _GDIPlus_BitmapCreateFromFile

         Описание функции


_GDIPlus_BitmapCreateFromFile

Создаёт объект Bitmap из файла

#include <GDIPlus.au3>
_GDIPlus_BitmapCreateFromFile($sFileName)

Параметры

$sFileName Путь к bitmap файлу

Возвращаемое значение

Успех:Возвращает дескриптор объекта Bitmap
Ошибка:Возвращает 0

Примечания

При завершении использования объекта Bitmap, необходимо вызвать функцию _WinAPI_DeleteObject, чтобы освободить ресурсы.

См. также

_WinAPI_DeleteObject

См. также

Искать GdipCreateBitmapFromFile в библиотеке MSDN

Пример

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

_Main()

Func _Main()
    Local $hGUI, $hBMP, $hBitmap, $hGraphic, $hImage, $iX, $iY, $hClone

    ; Создаёт GUI
    $hGUI = GUICreate("GDI+", 400, 300)
    GUISetState()

    ; Инициализация библиотеки GDI+
    _GDIPlus_Startup ()

    ; Capture 32 bit bitmap
    $hBMP = _ScreenCapture_Capture ("")
    $hImage = _GDIPlus_BitmapCreateFromHBITMAP ($hBMP)

    ; Create 24 bit bitmap clone
    $iX = _GDIPlus_ImageGetWidth ($hImage)
    $iY = _GDIPlus_ImageGetHeight ($hImage)
    $hClone = _GDIPlus_BitmapCloneArea ($hImage, 0, 0, $iX, $iY, $GDIP_PXF24RGB)

    ; Save bitmap to file
    _GDIPlus_ImageSaveToFile ($hClone, @MyDocumentsDir & "\GDIPlus_Image.bmp")

    ; Очищает ресурсы
    _GDIPlus_BitmapDispose ($hClone)
    _GDIPlus_BitmapDispose($hImage)
    _WinAPI_DeleteObject ($hBMP)

    ; Рисует bitmap в GUI
    $hBitmap = _GDIPlus_BitmapCreateFromFile (@MyDocumentsDir & "\GDIPlus_Image.bmp")
    $hGraphic = _GDIPlus_GraphicsCreateFromHWND ($hGUI)
    _GDIPlus_GraphicsDrawImage ($hGraphic, $hBitmap, 0, 0)

    ; Очищает ресурсы
    _GDIPlus_GraphicsDispose ($hGraphic)
    _GDIPlus_BitmapDispose ($hBitmap)

    ; Закрывает библиотеку GDI+
    _GDIPlus_ShutDown ()

    ; Цикл выполняется, пока окно не будет закрыто
    Do
    Until GUIGetMsg() = $GUI_EVENT_CLOSE


EndFunc   ;==>_Main