L_AgingBitmap

# include“l_bitmap.h”

L_LTIMGSFX_APIL_INTL_AgingBitmap (pBitmap、uHScratchCount uVScratchCount、uMaxScratchLen uDustDensity, uPitsDensity, uMaxPitSize, crScratch, crDust, crPits, uFlags)

添加效果,模拟随机颜色变化,划痕,灰尘和坑,看起来像一幅位图,它是由一个老电影。

参数

pBITMAPHANDLEpBitmap

位图句柄指针引用的位图被改变。

L_UINTuHScratchCount

数量的水平线条。

L_UINTuVScratchCount

垂直划痕线的数量。

L_UINTuMaxScratchLen

最大起跑线长度,以像素为单位。它的最小值是2。

L_UINTuDustDensity

尘埃密度,趋近位图面积的百分比来表示。有效值范围在0到1000之间。这个值是内部除以10。如果uDustDen = 1000,那么尘埃密度= 100%(也就是说,尘点的数量=整个位图区域。)

L_UINTuPitsDensity

坑的密度,趋近位图面积的百分比来表示。有效值范围在0到1000之间。这个值是内部除以10。如果uPitsDen = 1000,那么坑的密度= 100%(也就是说,坑的数量=整个位图区域。)

L_UINTuMaxPitSize

最大池大小,像素。坑的大小将随机选择1和uMaxPitSize之间。

也就是说crScratch

一个也就是说值代表的颜色线。

也就是说crDust

一个也就是说值代表尘土的颜色。

也就是说crPits

一个也就是说值代表的颜色。

L_UINTuFlags

国旗表明失真类型和颜色失真。您可以使用一个位或(|)从每组指定一个或多个标记。

以下标志显示失真类型:

价值 意义
AGING_ADD_NOTHING [0 x0000]不添加任何失真类型。在这种情况下,位图将被随机的变化改变颜色强度。
AGING_ADD_VSCRATCH [0 x0001]添加垂直划痕线。
AGING_ADD_HSCRATCH [0 x0002]添加水平线条。
AGING_ADD_DUST [0 x0004]添加灰尘。
AGING_ADD_PITS [0 x0008]添加坑。

以下标志显示失真的颜色:

价值 意义
AGING_SCRATCH_INV [0 x0000]使用像素颜色逆起跑线的颜色。如果设置了这个标志,crScratch将被忽略。
AGING_SCRATCH_CLR [0 x0010]使用crScratch起跑线的颜色。
AGING_DUST_INV [0 x0000]使用像素颜色逆尘土的颜色。如果设置了这个标志,crDust将被忽略。
AGING_DUST_CLR [0 x0020]使用crDust尘土的颜色。
AGING_PITS_INV [0 x0000]使用像素颜色反坑的颜色。如果设置了这个标志,crPits将被忽略。
AGING_PITS_CLR [0 x0040]使用crPits坑的颜色。

返回

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

评论

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

更新状态栏或检测用户中断在执行这个函数,引用L_SetStatusCallback

这个函数支持12和16位灰度和48和64位彩色图像。支持12和16位灰度和48和64位彩色图像是可用的文档和医疗成像工具包。

划痕的宽度是1像素。划痕的长度是随机的(2 -uMaxScratchLen)。

尘埃颗粒的大小是1像素(1 x1)。

坑的大小和形状是随机选择。坑的形状是随机和将1 x1和之间uMaxPitSizex uMaxPitSize。

函数还将随机变化的像素强度。

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

必需的dll和库

平台

x64 Win32。

另请参阅

功能

主题

例子

这个示例加载位图并应用老化效应。

L_INT AgingBitmapExample (L_VOID){L_INT nRet;BITMAPHANDLE LeadBitmap;/ *加载位图句柄保存图像。* // *加载位图,保持文件的比特每像素* /nRet = L_LoadBitmap (MAKE_IMAGE_PATH(文本(“IMAGE1.CMP”&LeadBitmap)),运算符(BITMAPHANDLE), 0 ORDER_BGR空,空);如果(nRet ! =成功)返回nRet;* / / *应用老化影响nRet = L_AgingBitmap (&LeadBitmap 10 2, 50岁,2,5,6,RGB (255255 0), RGB (0, 0, 0), RGB (0, 0255), AGING_ADD_VSCRATCH | AGING_ADD_PITS | AGING_SCRATCH_INV | AGING_PITS_CLR);如果(nRet ! =成功)返回nRet;nRet = L_SaveBitmap (MAKE_IMAGE_PATH(文本(“Result.BMP”))、&LeadBitmap FILE_BMP, 24岁,0,NULL);如果(nRet ! =成功)返回nRet;/ /免费的位图如果(LeadBitmap.Flags.Allocated)L_FreeBitmap (&LeadBitmap);返回成功;}

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