L_GrayScaleBitmapExt

# include“l_bitmap.h”

L_LTIMGCLR_APIL_INTL_GrayScaleBitmapExt (pBitmap、RedFact GreenFact、BlueFact uFlags)

将任何一个位图转换为灰度位图而不改变其决议。

参数

pBITMAPHANDLEpBitmap

位图句柄指针引用的位图转换。

L_INTRedFact

值代表或重量百分比给红色的位图中的每个像素的价值。可能的值是0到1000。

L_INTGreenFact

值代表或重量百分比给绿色的位图中的每个像素的价值。可能的值是0到1000。

L_INTBlueFact

值代表或重量百分比给蓝色的位图中的每个像素的价值。可能的值是0到1000。

L_UINT32uFlags

保留以供将来使用。必须是0。

返回

价值 意义
成功 函数是成功的。
< 1 一个错误发生。指返回代码

评论

这个函数不支持已签名的数据图像。它返回错误代码ERROR_SIGNED_DATA_NOT_SUPPORTED如果签名数据图像是传递给这个函数。

RedFact + GreenFact + BlueFact必须等于1000。(内部值除以1000)。

位图的每个像素的红、绿和蓝值的修改RedFact,GreenFactBlueFact参数,分别。这允许用户更重视一个颜色,颜色本质上提高,在像素转换成灰度。

例如,如果这个函数被调用RedFact设置为500,GreenFact设置为250和BlueFact设置为250,每个像素的红色价值将得到50%的体重在确定灰度值。绿色的价值将得到25%的重量和蓝值将得到25%的体重在确定灰度值。这个亮点或提高红色的位图,之前转换为灰度。

这个函数支持48和64位的彩色图像。

这个函数不支持灰度图像。它返回错误代码ERROR_GRAY32_UNSUPPORTED如果一个灰度图像是传递给这个函数。

必需的dll和库

平台

Win32 x64, Linux。

另请参阅

功能

主题

例子

这个例子假定有一个位图载入位图,这是BITMAPHANDLE类型。

L_INT GrayScaleBitmapExtExample (L_VOID){L_INT nRet;L_INT RedFact、GreenFact BlueFact;BITMAPHANDLE位图;/ *加载位图的位/像素* /nRet = L_LoadBitmap (MAKE_IMAGE_PATH(文本(“sample5.cmp”)),位图,运算符(BITMAPHANDLE), 0 ORDER_BGR空,空);如果(nRet ! =成功)返回nRet;RedFact = 300;GreenFact = 590;BlueFact = 110;nRet = L_GrayScaleBitmapExt(位图、RedFact GreenFact, BlueFact, 0);如果(nRet ! =成功)返回nRet;nRet = L_SaveBitmap (MAKE_IMAGE_PATH(文本(“Result.BMP”))、位图、FILE_BMP, 24岁,0,NULL);如果(nRet ! =成功)返回nRet;/ /免费的位图如果(Bitmap.Flags.Allocated)L_FreeBitmap(位图);返回成功;}

LEADTOOLS光栅成像C API的帮助
188金宝搏的网址客服|支持|联系我们|知识产权的通知
©1991 - 2021领先的技术公司。保留所有权利。