CreateBitmapIndirect 関数は、指定された幅、高さ、色フォーマット(カラープレーンと bpp)を持つビットマップを作成する。
CreateBitmapIndirect pbm
pbm : [var] ビットマップに関する情報を含む BITMAP 構造体へのポインタ。アプリケーションが bmWidth または bmHeight メンバを 0 に設定した場合、CreateBitmapIndirect は 1×1 ピクセルのモノクロビットマップへのハンドルを返す。
(プラグイン / モジュール : gdi32.dll)
CreateBitmapIndirect 関数は、指定された幅、高さ、色フォーマット(カラープレーンと bpp)を持つビットマップを作成する。 [戻り値] 関数が成功した場合、戻り値はビットマップへのハンドルとなる。関数が失敗した場合、戻り値は NULL となる。この関数は次の値を返すことがある。 (以下省略) [備考] CreateBitmapIndirect 関数はデバイス依存ビットマップを作成する。ビットマップを作成した後は、SelectObject を呼んでデバイスコンテキストに選択できる。ただし、ビットマップとデバイスコンテキストのフォーマットが同じ場合に限る。CreateBitmapIndirect でカラービットマップも作成できるが、性能上の理由から、アプリケーションはモノクロビットマップを CreateBitmapIndirect で作成し、カラービットマップは CreateCompatibleBitmap で作成すべきである。CreateBitmapIndirect で得たカラービットマップをデバイスコンテキストに選択するたびに、システムはビットマップのフォーマットが選択先 DC のフォーマットと一致するかを確認しなければならない。CreateCompatibleBitmap はデバイスコンテキストを引数に取るので、そのデバイスコンテキストと同じフォーマットのビットマップを返す。よって、CreateCompatibleBitmap で得たカラービットマップに対する SelectObject の呼び出しは、CreateBitmapIndirect で得たものより高速になる。ビットマップがモノクロの場合、0 が前景色、1 が宛先デバイスコンテキストの背景色を表す。ビットマップが不要になったら DeleteObject を呼んで削除する。
| プラグイン / モジュール | gdi32.dll |
| バージョン | 1.0 |
| 作成日 | 2026/04/16 |
| 著作者 | IronHSP / CsWin32 bridge |
| URL | https://github.com/inovia/IronHSP |
| 備考 | Win32 API の gdi32.dll 関数群。CsWin32 + win32metadata から自動生成。
hsp3net 専用 (intptr / NSTRUCT / wstr を使用)。 |
| タイプ | 拡張命令 |
| グループ | Win32API |
| 対応環境 |
|
| hs ファイル | hsphelp\win32_gdi32_gen2.hs |