L_TextureAlphaBlendBitmap

# include“l_bitmap.h”

L_LTIMGEFX_APIL_INTL_TextureAlphaBlendBitmap (pBitmapDst、nXDst nYDst、nWidth nHeight, pBitmapSrc, nXSrc, nYSrc, pBitmapMask, nOpacity, pBitmapUnderlay, pOffset, uFlags)

结合了图像数据从两个位图和羽毛和常数不透明;通过结合两个位图与一个变量不透明度,取决于一个褪色的面具把结果与目标位图以一个恒定的不透明度。

参数

pBITMAPHANDLEpBitmapDst

指针引用目标位图的位图句柄。函数将会更新这个位图。

L_INTnXDst

目标矩形的X坐标的原点。

L_INTnYDst

目标矩形的Y坐标的原点。

L_INTnWidth

结合区域的宽度,以像素为单位。这个宽度适用于源和目的地区域。

L_INTnHeight

结合区域的高度,以像素为单位。这个高度适用于源和目的地区域。

pBITMAPHANDLEpBitmapSrc

位图句柄指针引用源位图。

L_INTnXSrc

源矩形的X坐标的原点。

L_INTnYSrc

源矩形的Y坐标的原点。

pBITMAPHANDLEpBitmapMask

位图句柄指针引用褪色的面具,如果你想将两位图与不透明度设置这个参数为NULL。

L_INTnOpacity

不透明度值时使用相结合的领域从羽毛和目标位图的结果。有效值范围从0 - 65535为64位,48比特位和16位灰度图像和从0 - 4095的12位灰度图像。否则,它从0到255。

pBITMAPHANDLEpBitmapUnderlay

位图句柄指针引用使用的位图作为底层形象。函数将使用这个位图衬底面具的位图。你可以忽略这个参数效应通过NULL。

LPPOINTpOffset

指针指向一个衬底位图抵消对目标位图。函数将使用这个点计算衬底的部分位图将被应用到掩码位图。利用这一点都将给用户的能力给连续纹理的感觉将这个函数应用到邻近的部分在目的地时位图使用相同或不同的面具,如果pBitmapUnderlay参数设置为零也将这个参数设置为NULL。

L_UINT32uFlags

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

返回

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

评论

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

结合两个位图,一个固定的透明度,使用L_AlphaBlendBitmap函数。

结合两个位图和一根羽毛,使用L_FeatherAlphaBlendBitmap函数。

L_TextureAlphaBlendBitmap函数的两个操作;首先将两张图片与羽毛使用褪色面具位图然后把结果与目标位图与一个固定的不透明度。

创建一个位图,其中包含一个褪色的面具,使用L_CreateFadedMask

这个函数也可以衬底褪色面具在使用前衬底位图的位图羽毛合并操作。

这个函数也结合了褪色面具与衬底的位图,位图似乎消退面具位图的基本结构。

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

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

下面是一个例子的结果图像使用这个函数具有以下特点:

正确的图片是没有纹理图应用函数的结果。

左边的图像是应用函数纹理图的结果。

应用L_TextureAlphaBlendBitmap的结果

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

必需的dll和库

平台

Win32 x64, Linux。

另请参阅

功能

主题

例子

L_INT TextureAlphaBlendBitmapExample (L_VOID){L_INT nRet;BITMAPHANDLE BitmapDst;/ * * /加载位图句柄保存图像BITMAPHANDLE BitmapSrc;/ *源位图* /BITMAPHANDLE BitmapMask;/ *位图句柄褪色面具位图* /L_INT XDst、YDst XSize、YSize XSrc, YSrc;/ *加载两个位图,每像素24位* /nRet = L_LoadBitmap (MAKE_IMAGE_PATH(文本(“ImageProcessingDemo \ \ Fruits.jpg”&BitmapDst)),运算符ORDER_BGRORGRAY (BITMAPHANDLE), 24日,空,空);如果(nRet ! =成功)返回nRet;nRet = L_LoadBitmap (MAKE_IMAGE_PATH(文本(“ImageProcessingDemo \ \ Image1.jpg”&BitmapSrc)),运算符ORDER_BGR (BITMAPHANDLE), 24日,空,空);如果(nRet ! =成功)返回nRet;/ *加载褪色掩码位图* /nRet = L_LoadBitmap (MAKE_IMAGE_PATH(文本(“ImageProcessingDemo \ \ FadeMask.bmp”&BitmapMask)),运算符ORDER_BGR (BITMAPHANDLE), 24日,空,空);如果(nRet ! =成功)返回nRet;/ *结合BitmapSrc BitmapDst,褪色面具位图和100 * /不透明XSrc = XDst = 0;YSrc = YDst = 0;XSize = min (BitmapDst.Width BitmapSrc.Width) 1;YSize = min (BitmapDst.Height BitmapSrc.Height) 1;nRet = L_TextureAlphaBlendBitmap (&BitmapDst XDst、YDst BitmapMask。宽度,BitmapMask。高度、&BitmapSrc XSrc、YSrc &BitmapMask, 100年,空,空,0);如果(nRet ! =成功)返回nRet;nRet = L_SaveBitmap (MAKE_IMAGE_PATH(文本(“Result.BMP”))、&BitmapDst FILE_BMP, 24岁,0,NULL);如果(nRet ! =成功)返回nRet;/ /免费的位图如果(BitmapDst.Flags.Allocated)L_FreeBitmap (&BitmapDst);如果(BitmapSrc.Flags.Allocated)L_FreeBitmap (&BitmapSrc);如果(BitmapMask.Flags.Allocated)L_FreeBitmap (&BitmapMask);返回成功;}
LEADTOOLS光栅成像C API的帮助
188金宝搏的网址客服|支持|联系我们|知识产权的通知
©1991 - 2021领先的技术公司。保留所有权利。