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)

另请参阅

DrvIcmCreateColorTransform