You can use the following functions to take advantage of the DIB engine's bitmap support.
Function | Description |
---|---|
DIB_BitBlt | Performs bit block transfers for minidrivers written for video adapters that do not provide bitblt accelerators. |
DIB_DibBltExt | Performs a blt operation for a device-independent bitmap to or from a DDB. |
DIB_DibToDevice | Performs a blt operation for a device-independent bitmap to the display. |
The DIB Engine supports both 5:5:5 and 5:6:5 formats for 16 bits per pixel (bpp) DIBs. The 5:5:5 format means the most significant bit is undefined, the next five bits are red, followed by five bits of green, followed by five bits of blue (R:G:B). The 5:6:5 format means the most significant five bits are red, followed by 6 bits of green followed by 5 bits of blue.
The 5:6:5 format is enabled by setting the FIVE6FIVE bit in the deFlags field of the driver's PDEVICE. A better method is to call CreateDIBPDevice with a BITMAPINFO structure defined for a 5:6:5 DIB.
The DIB Engine supports 32 bits per pixel DIBs. This format is very similar to 24 bpp, except that each pixel is a dword (four bytes) with the most significant byte being undefined. The next significant byte is red, followed by green followed by blue.
The 32 bpp format is enabled by storing the value 32 into the deBitsPixel field of the driver's PDEVICE.
DIB_BitBlt, DIB_SelectBitmap, DIB_CreateDIBitmap, DIB_DibToDevice