Prev Next

CreateDIBitmap info  Overview  Group

The CreateDIBitmap function creates a device-dependent bitmap (DDB) from a device-independent bitmap (DIB) and, optionally, sets the bitmap bits.

HBITMAP CreateDIBitmap(

    HDC hdc,

// handle to device context

    CONST BITMAPINFOHEADER *lpbmih,

// pointer to bitmap size and format data

    DWORD fdwInit,

// initialization flag

    CONST VOID *lpbInit,

// pointer to initialization data

    CONST BITMAPINFO *lpbmi,

// pointer to bitmap color-format data

    UINT fuUsage 

// color-data usage

   );

Parameters

hdc
Identifies a device context.
lpbmih
Points to a BITMAPINFOHEADER structure.

If fdwInit is CBM_INIT, the function uses the BITMAPINFOHEADER structure to obtain the desired width and height of the bitmap as well as other information. Note that a positive value for the height indicates a bottom-up DIB while a negative value for the height indicates a top-down DIB. This scenario is compatible with the CreateDIBitmap function.

fdwInit
A set of bit flags that specify how the operating system initializes the bitmap’s bits.

The following bit flag constant is defined:

Value

Meaning

CBM_INIT

If this flag is set, the operating system uses the data pointed to by the lpbInit and lpbmi parameters to initialize the bitmap’s bits.

If this flag is clear, the data pointed to by those parameters is not used.

If fdwInit is zero, the operating system does not initialize the bitmap’s bits.

lpbInit
Points to an array of bytes containing the initial bitmap data. The format of the data depends on the biBitCount member of the BITMAPINFO structure to which the lpbmi parameter points.
lpbmi
Points to a BITMAPINFO structure that describes the dimensions and color format of the array pointed to by the lpbInit parameter.
fuUsage
Specifies whether the bmiColors member of the BITMAPINFO structure was initialized and, if so, whether bmiColors contains explicit red, green, blue (RGB) values or palette indices. The fuUsage parameter must be one of the following values:

Value

Meaning

DIB_PAL_COLORS

A color table is provided and consists of an array of 16-bit indices into the logical palette of the device context into which the bitmap is to be selected.

DIB_RGB_COLORS

A color table is provided and contains literal RGB values.

Return Values

If the function succeeds, the return value is a handle to the bitmap.

If the function fails, the return value is NULL. To get extended error information, call GetLastError.

Remarks

The CBM_CREATDIB flag for the fdwInit parameter is no longer supported.

When you no longer need the bitmap, call the DeleteObject function to delete it.

See Also

BITMAPINFOHEADER, BITMAPINFO, DeleteObject, GetDeviceCaps, GetSystemPaletteEntries, SelectObject

See:

Code: