TranslateBitmapBits 函数 (icm.h)
转换具有已定义格式的位图的颜色,以便以请求的格式生成另一个位图。
语法
BOOL TranslateBitmapBits(
HTRANSFORM hColorTransform,
PVOID pSrcBits,
BMFORMAT bmInput,
DWORD dwWidth,
DWORD dwHeight,
DWORD dwInputStride,
PVOID pDestBits,
BMFORMAT bmOutput,
DWORD dwOutputStride,
PBMCALLBACKFN pfnCallBack,
LPARAM ulCallbackData
);
参数
hColorTransform
标识要使用的颜色转换。
pSrcBits
指向要转换的位图的指针。
bmInput
指定输入位图的格式。 必须设置为 BMFORMAT 枚举类型的值之一。
注意
此函数不支持 BM_XYZTRIPLETS 或 BM_YxyTRIPLETS 作为输入。
dwWidth
指定输入位图中每个扫描行的像素数。
dwHeight
指定输入位图中的扫描行数。
dwInputStride
指定输入位图中从一个扫描行的开头到下一个扫描行的开头的字节数;如果设置为零,则函数假定扫描行已填充,以便与 DWORD 对齐。
pDestBits
指向要放置已转换位图的缓冲区的指针。
bmOutput
指定输出位图的格式。 必须设置为 BMFORMAT 枚举类型的值之一。
dwOutputStride
指定输出位图中从一个扫描行的开头到下一个扫描行的开头的字节数;如果设置为零,则函数假定扫描行应填充为 DWORD 对齐。
pfnCallBack
指向 TranslateBitmapBits 定期调用的回调函数的指针,用于报告进度并允许调用进程取消转换。 (请参阅 ICMProgressProcCallback )
ulCallbackData
传递回回调函数的数据,例如,用于标识报告进度的转换。
返回值
如果此函数成功,则返回值为 TRUE。
如果此函数失败,则返回值为 FALSE。 有关扩展的错误信息,请调用 GetLastError。
注解
如果输入和输出格式与颜色转换不兼容,则此函数将失败。
使用浮点 BMFORMAT、BM_32b_scARGB或BM_32b_scRGB时,要转换的颜色数据不应包含 NaN 或无穷大。 NaN 和无穷大不被视为表示合法的颜色分量值,并且转换包含 NaN 或无穷大的像素的结果在颜色方面毫无意义。 正在处理的颜色数据中的 NaN 或无穷大值将以无提示方式处理,并且不会返回错误。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows 2000 Professional [仅限桌面应用] |
最低受支持的服务器 | Windows 2000 Server [仅限桌面应用] |
标头 | icm.h |
Library | Mscms.lib |
DLL | Mscms.dll |