_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