指定された座標とフォーマットからBitmapオブジェクトのクローンを作成します。
#Include <GDIPlus.au3>
_GDIPlus_BitmapCloneArea($hBmp, $iLeft, $iTop, $iWidth, $iHeight[, $iFormat = 0x00021808])
パラメータ
$hBmp | Bitmapオブジェクトのハンドル |
$iLeft | コピーする長方形の左上隅のX座標 |
$iTop | コピーする長方形の左上隅のY座標 |
$iWidth | コピーするビットマップ部分を指定する長方形の幅 |
$iHeight | コピーするビットマップ部分を指定する長方形の高さ |
$iFormat | [オプション]新しいビットマップのピクセルのフォーマット: $GDIP_PXF01INDEXED = 1bpp、インデックス済み $GDIP_PXF04INDEXED = 4bpp、インデックス済み $GDIP_PXF08INDEXED = 8bpp、インデックス済み $GDIP_PXF16GRAYSCALE = 16bpp、グレースケール $GDIP_PXF16RGB555 = 16bpp; 各RGB成分5ビット $GDIP_PXF16RGB565 = 16bpp; 赤5ビット、緑6ビット、青5ビット $GDIP_PXF16ARGB1555 = 16bpp; アルファ成分1ビット、各RGB成分5ビット $GDIP_PXF24RGB = 24bpp; 各RGB成分8ビット $GDIP_PXF32RGB = 32bpp; 各RGB成分8ビット、アルファ成分なし $GDIP_PXF32ARGB = 32bpp; アルファ成分、各RGB成分8ビット $GDIP_PXF32PARGB = 32bpp; アルファ成分、各RGB成分8ビット。プリマルチプライ済み $GDIP_PXF48RGB = 48bpp; 各RGB成分16ビット $GDIP_PXF64ARGB = 64bpp; アルファ成分、各RGB成分16ビット $GDIP_PXF64PARGB = 64bpp; アルファ成分、各RGB成分16ビット。プリマルチプライ済み |
返し値
成功: | 新しいBitmapオブジェクトのハンドルを返します |
失敗: | 0 |
注意
Bitmapオブジェクトの使用後は_GDIPlus_BitmapDisposeを呼んでリソースを解放してください。
関連
_GDIPlus_BitmapDispose, _GDIPlus_ImageGetPixelFormat
こちらも参照
MSDNライブラリでGdipCloneBitmapAreaIを検索して下さい。
例
#include <GDIPlus.au3>
#include <ScreenCapture.au3>
Opt('MustDeclareVars', 1)
_Main()
Func _Main()
Local $hBitmap, $hClone, $hImage, $iX, $iY
; GDI+ライブラリを初期化
_GDIPlus_StartUp ()
; 32ビットのビットマップをキャプチャ
$hBitmap = _ScreenCapture_Capture ("")
$hImage = _GDIPlus_BitmapCreateFromHBITMAP ($hBitmap)
; 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_ImageDispose ($hClone)
_GDIPlus_ImageDispose ($hImage)
_WinAPI_DeleteObject ($hBitmap)
; GDI+ライブラリを閉じる
_GDIPlus_ShutDown ()
EndFunc ;==>_Main