ファイルからBitmapオブジェクトを作成します。
#Include <GDIPlus.au3>
_GDIPlus_BitmapCreateFromFile($sFileName)
パラメータ
$sFileName | ビットマップファイルのパス |
返し値
成功: | Bitmapオブジェクトのハンドル |
失敗: | 0 |
注意
Bitmapオブジェクトの使用後は_GDIPlus_BitmapDisposeを呼んでリソースを解放してください。
関連
_WinAPI_DeleteObject
こちらも参照
MSDNライブラリでGdipCreateBitmapFromFileを検索して下さい。
例
#include <GuiConstantsEx.au3>
#include <GDIPlus.au3>
#include <ScreenCapture.au3>
Opt('MustDeclareVars', 1)
_Main()
Func _Main()
Local $hGUI, $hBMP, $hBitmap, $hGraphic, $hImage, $iX, $iY, $hClone
; GUI作成
$hGUI = GUICreate("GDI+", 400, 300)
GUISetState()
; GDI+ライブラリを初期化
_GDIPlus_Startup ()
; 32ビットのビットマップをキャプチャ
$hBMP = _ScreenCapture_Capture ("")
$hImage = _GDIPlus_BitmapCreateFromHBITMAP ($hBMP)
; 24ビットのビットマップクローンを作成
$iX = _GDIPlus_ImageGetWidth ($hImage)
$iY = _GDIPlus_ImageGetHeight ($hImage)
$hClone = _GDIPlus_BitmapCloneArea ($hImage, 0, 0, $iX, $iY, $GDIP_PXF24RGB)
; ビットマップをファイルに保存
_GDIPlus_ImageSaveToFile ($hClone, @MyDocumentsDir & "\GDIPlus_Image.bmp")
; リソースを破棄
_GDIPlus_BitmapDispose ($hClone)
_GDIPlus_BitmapDispose($hImage)
_WinAPI_DeleteObject ($hBMP)
; ビットマップを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