CreateBitmapIndirect函数创建一个具有指定宽度,高度和颜色格式(每个像素的颜色平面和位)的位图。
HBITMAP CreateBitmapIndirect(
CONST BITMAP *【LPBM】 | //指向位图数据的指针 |
); |
参数
【LPBM】
指向包含位图信息的BITMAP结构。如果应用程序将bmWidth或bmHeight成员设置为零,CreateBitmapIndirect将返回1到1像素的单色位图的句柄。
返回值
如果函数成功,则返回值是位图的句柄。
如果函数失败,返回值为NULL。
备注
创建位图后,可以通过调用SelectObject功能将其选择到设备上下文中。
虽然CreateBitmapIndirect功能可用于创建色彩位图,但由于性能原因,应用程序应使用CreateBitmapIndirect创建单色位图,并创建彩色位图CreateCompatibleBitmap.当从CreateBitmapIndirect返回的颜色位图被选择到设备上下文中时,Windows必须确保位图与正在选择的设备上下文的格式相匹配。由于CreateCompatibleBitmap使用设备上下文,因此返回与指定设备上下文格式相同的位图。因此,对SelectObject的后续调用比从CreateBitmapIndirect返回的颜色位图快。
如果位图是单色的,则零表示前景色,一个表示目标设备上下文的背景颜色。
当您不再需要位图时,请调用DeleteObject功能将其删除。
也可以看看
BitBlt, BITMAP, CreateBitmap, CreateCompatibleBitmap, CreateDIBitmap, DeleteObject, SelectObject