CreateBitmap 関数 (wingdi.h)

CreateBitmap 関数は、指定された幅、高さ、および色形式 (カラー プレーンとピクセルごとのビット数) を持つビットマップを作成します。

構文

HBITMAP CreateBitmap(
  [in] int        nWidth,
  [in] int        nHeight,
  [in] UINT       nPlanes,
  [in] UINT       nBitCount,
  [in] const VOID *lpBits
);

パラメーター

[in] nWidth

ビットマップの幅 (ピクセル単位)。

[in] nHeight

ビットマップの高さ (ピクセル単位)。

[in] nPlanes

デバイスで使用されるカラー プレーンの数。

[in] nBitCount

1 つのピクセルの色を識別するために必要なビット数。

[in] lpBits

ピクセルの四角形で色を設定するために使用される色データの配列へのポインター。 四角形内の各スキャン行は、単語が揃っている必要があります (単語が揃っていないスキャン行は、ゼロで埋め込む必要があります)。 このパラメーターが NULL の場合、新しいビットマップの内容は未定義になります。

戻り値

関数が成功した場合、戻り値はビットマップへのハンドルです。

関数が失敗した場合、戻り値は NULL です

この関数は、次の値を返すことができます。

リターン コード 説明
ERROR_INVALID_BITMAP
ビットマップの計算サイズが 0 未満です。

注釈

CreateBitmap 関数は、デバイスに依存するビットマップを作成します。

ビットマップを作成した後、 SelectObject 関数を呼び出すことによってデバイス コンテキストに選択できます。 ただし、ビットマップと DC の形式が同じ場合にのみ、ビットマップをデバイス コンテキストに選択できます。

CreateBitmap 関数を使用して、カラー ビットマップを作成できます。 ただし、パフォーマンス上の理由から、アプリケーションでは CreateBitmap を 使用してモノクロ ビットマップを作成し 、CreateCompatibleBitmap を使用してカラー ビットマップを作成する必要があります。 CreateBitmap から返されるカラー ビットマップがデバイス コンテキストに選択されるたびに、ビットマップが選択されているデバイス コンテキストの形式と一致することがシステムによってチェックされます。 CreateCompatibleBitmap はデバイス コンテキストを受け取るため、指定したデバイス コンテキストと同じ形式のビットマップを返します。 したがって、CreateCompatibleBitmap のカラー ビットマップでは、CreateBitmap から返されるカラー ビットマップよりも、SelectObject の後続の呼び出しの方が高速です。

ビットマップがモノクロの場合、0 は前景色を表し、0 は宛先デバイス コンテキストの背景色を表します。

アプリケーションで nWidth または nHeight パラメーターを 0 に設定すると、 CreateBitmap はハンドルを 1 x 1 ピクセルのモノクロ ビットマップに返します。

ビットマップが不要になったら、 DeleteObject 関数を呼び出して削除します。

要件

   
サポートされている最小のクライアント Windows 2000 Professional [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows 2000 Server [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー wingdi.h (Windows.h を含む)
Library Gdi32.lib
[DLL] Gdi32.dll

こちらもご覧ください

ビットマップ関数

ビットマップの概要

CreateBitmapIndirect

CreateCompatibleBitmap

CreateDIBitmap

DeleteObject

GetBitmapBits

Selectobject

SetBitmapBits