Win32API: GetDIBits

ビットマップのビット データを、指定した形式で指定したバッファにコピーします。


定義
Declare Function GetDIBits Lib "gdi32" _
         (hdc As HDC, _
          hbmp As HBITMAP, _
          uStartScan As DWord, _
          cScanLines As DWord, _
          lpvBits As VoidPtr, _
    ByRef lpbi As BITMAPINFO, _
          uUsage As DWord) As Long
hdc
デバイス コンテキストのハンドルを指定します。

hbmp
ビットマップ ハンドルを指定します。

uStartScan
取得する最初の走査行を指定します。

cScanLines
取得する走査行の数を指定します。

lpvBits
ビットマップ データを格納するためのバッファへのポインタを指定します。
NULL を指定すると、lpbi パラメータで指定する構造体にビットマップのサイズと形式が格納されます。

lpbi (ポインタ参照)
取得するビットマップの情報が格納されている、BITMAPINFO構造体へのポインタを指定します。

uUsage
lpbi パラメータで指定した BITMAPINFO 構造体の bmiColors メンバの形式を、以下の定数から指定します。
定数説明
DIB_PAL_COLORSカラーテーブルは、現在の論理パレットへの 16 ビットのインデックスの配列です。
DIB_RGB_COLORSカラーテーブルは、RGB 値そのものです。

戻り値

lpvBits パラメータに NULL を指定しなかったときに関数が成功すると、取得した走査行の数が返ります。
Windows9x系OS: lpvBits パラメータに NULL を指定したときに関数が成功すると、ビットマップの走査行の数が返ります。
WindowsNT系OS: lpvBits パラメータに NULL を指定したときに関数が成功すると、1 が返ります。
関数が失敗すると、0 が返ります。

環境情報

インクルード ファイル: api_gdi.sbp 内で定義済み
DLLファイル: gdi32.dll


SetDIBits関数BITMAPINFO構造体