The SetDIBits function sets the pixels in a bitmap using the color data found in the specified device-independent bitmap (DIB).
int SetDIBits(
HDC hdc, // handle to device context
HBITMAP hbmp, // handle to bitmap
UINT uStartScan, // starting scan line
UINT cScanLines, // number of scan lines
CONST VOID *lpvBits, // array of bitmap bits
CONST BITMAPINFO *lpbmi, // address of structure with bitmap data
UINT fuColorUse // type of color indexes to use
);
Value | Meaning |
---|---|
DIB_PAL_COLORS | The color table consists of an array of 16-bit indexes into the logical palette of the device context identified by the hdc parameter. |
DIB_RGB_COLORS | The color table is provided and contains literal RGB values. |
If the function succeeds, the return value is the number of scan lines copied.
If the function fails, the return value is zero.
Windows NT: To get extended error information, call GetLastError.
Optimal bitmap drawing speed is obtained when the bitmap bits are indexes into the system palette.
Applications can retrieve the system palette colors and indexes by calling the GetSystemPaletteEntries function. After the colors and indexes are retrieved, the application can create the DIB. For more information, see System Palette.
The device context identified by the hdc parameter is used only if the DIB_PAL_COLORS constant is set for the fuColorUse parameter; otherwise it is ignored.
The bitmap identified by the hbmp parameter must not be selected into a device context when the application calls this function.
The origin for bottom-up DIBs is the lower-left corner of the bitmap; the origin for top-down DIBs is the upper-left corner of the bitmap.
ICM: Color management is performed. If the specified BITMAPNFO structure is not BITMAPV4HEADER or BITMAPV5HEADER, the color profile of the current device context is used as the source color space profile. If the BITMAPINFO structure is not BITMAPV4HEADER or BITMAPV5HEADER, the sRGB color space is used. If the specified BITMAPINFO structure is BITMAPV4HEADER or BITMAPV5HEADER, the color space profile associated with the bitmap is used as the source color space.
Windows NT: Requires version 3.1 or later.
Windows: Requires Windows 95 or later.
Windows CE: Unsupported.
Header: Declared in wingdi.h.
Import Library: Use gdi32.lib.
Bitmaps Overview, Bitmap Functions, GetDIBits, GetSystemPaletteEntries, BITMAPINFO