DrvIcmCheckBitmapBitmapBits 函数 (winddi.h)
DrvIcmCheckBitmapBits 函数检查指定位图中的像素是否位于指定转换的设备范围内。
语法
BOOL DrvIcmCheckBitmapBits(
DHPDEV dhpdev,
HANDLE hColorTransform,
SURFOBJ *pso,
PBYTE paResults
);
参数
dhpdev
物理设备的 PDEV 的句柄。
hColorTransform
要对其检查位图的颜色转换的句柄。 此转换是由驱动程序通过之前调用其 DrvIcmCreateColorTransform 例程创建的。
pso
指向包含要检查的位图图面的 SURFOBJ 的指针。
paResults
指向驱动程序在其中返回测试结果的字节数组的指针。 GDI 分配此缓冲区以包含至少与位图中的像素一样多的字节。 在写入数组之前,驱动程序无需执行任何分配或绑定检查。
返回值
DrvIcmCheckBitmapBitmapBits 成功后返回 TRUE 。 否则,它将报告错误并返回 FALSE。
注解
paResults 指向的数组中的每个字节都对应于位图中的像素。 对于每个像素,驱动程序确定其颜色值是否在设备色域中,然后在相应的数组字节中写入介于 0 到 255 之间的值。 这些值具有以下含义:
值 | 含义 |
---|---|
零个 | 颜色在设备色域中。 |
非零 | 颜色在色域之外。 值为 n+1 表示颜色至少与值 n 一样远离色域。 |
DrvIcmCheckBitmapBitmapBits 可以在支持 ICM 的驱动程序中选择性地实现。 驱动程序通过在 DEVINFO 结构的 flGraphicsCaps 成员中设置 GCAPS_ICM 标志来指示对 ICM 的支持。
要求
要求 | 值 |
---|---|
目标平台 | 桌面 |
标头 | winddi.h (包括 Winddi.h) |