SetDIBits

【勇芳软件工作室】汉化HomePreviousNext

SetDIBits函数使用指定的与设备无关的位图(DIB)中找到的颜色数据设置位图中的像素。

int SetDIBits(

HDC 【HDC】,//设备上下文的句柄
HBITMAP 【骨形态发生蛋白】,//处理位图
UINT 【uStartScan】,//启动扫描线
UINT 【cScanLines】,//扫描行数
CONST VOID *【lpvBits】,//位图位数组
CONST BITMAPINFO *【//具有位图信息的结构地址。】,//具有位图数据的结构地址
UINT 【fuColorUse】//要使用的颜色索引类型
); 

参数

【HDC】

标识设备上下文。

【骨形态发生蛋白】

使用指定DIB的颜色数据标识要更改的位图。

【uStartScan】

指定由【lpvBits】参数指向的阵列中与设备无关的颜色数据的起始扫描行。

【cScanLines】

指定包含与设备无关的颜色数据的阵列中找到的扫描线数。

【lpvBits】

指向DIB颜色数据,存储为字节数组。位图值的格式取决于BITMAPINFO参数指向的BITMAPINFO结构的biBitCount成员。

【//具有位图信息的结构地址。】

指向包含DIB信息的BITMAPINFO数据结构。

【fuColorUse】

指定是否提供BITMAPINFO结构的bmiColors成员,如果是,是否bmiColors包含显式的红色,绿色,蓝色(RGB)值或调色板索引。【fuColorUse】参数必须是以下值之一:

含义
DIB_PAL_COLORS颜色表由由【HDC】参数标识的设备上下文的逻辑调色板中的16位索引阵列组成。
DIB_RGB_COLORS提供了颜色表,并包含文字RGB值。

返回值

如果功能成功,则返回值是复制的扫描行数。

如果函数失败,返回值为零。要获取扩展错误信息,请调用GetLastError.

备注

当位图位是系统调色板的索引时,获得最佳位图绘制速度。

应用程序可以通过调用GetSystemPaletteEntries函数来检索系统调色板的颜色和索引。在检索颜色和索引后,应用程序可以创建DIB。有关详细信息,请参阅系统调色板.

仅当为【fuColorUse】参数设置DIB_PAL_COLORS常数时,才使用【HDC】参数标识的设备上下文;否则被忽略。

当应用程序调用此函数时,不得将由【骨形态发生蛋白】参数标识的位图选择到设备上下文中。

自下而上的DIB的起源是位图的左下角;自上而下的DIB的起源是位图的左上角。

也可以看看

GetDIBits, GetSystemPaletteEntries, BITMAPINFO