L_MaskConvolutionBitmap

# include“l_bitmap.h”

L_LTIMGEFX_APIL_INTL_MaskConvolutionBitmap (pBitmap nAngle、uDepth uHeight, uFlags)

各种3 d效果适用于位图。

参数

pBITMAPHANDLEpBitmap

位图句柄指针引用目标位图。

L_INTnAngle

角明显的光源,数度。可能的值从-36000年到36000年不等。

L_UINTuDepth

3 d效果的深度。(这个值是内部除以100)。这个值被用作乘数对个人掩码值。

L_UINTuHeight

非零值大于2,代表的高度掩模矩阵。这个值决定了3 d效果的高度。值越大,越复杂和耗时的操作。

L_UINTuFlags

国旗,表示使用哪个面具的卷积过程。可能的值是:

价值 意义
MSKC_EMBOSS [0 x0000]应用位图上的浮雕的面具。
MSKC_EDGE [0 x0001]应用边缘检测掩码位图。
MSKC_ESPLOTCH [0 x0002]应用Emboss-Splotch面具的位图。
MSKC_SPLOTCH [0 x0003]应用斑点掩模上的位图。

返回

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

评论

MSKC_EDGE,对角的结果是相同的。例如,角度0和180相同的结果在使用边缘检测的面具。

当一个图像经过图像卷积图像的每个像素乘以一个面具来创建一个新的像素值。面具是一个数组的值描述的重量,应该给每个像素周围特定的像素。新的像素值的结果除以面具的面具和体重。使用不同的面具导致图像的不同变化。这个函数使用的面具在不同类型的边缘检测结果。

例如,点击这里

获得这些位图,使用以下设置:

参数 浮雕 边缘 Esplotch 斑点
nAngle 0 0 180年 0
uDepth 3 3 3 3
uHeight 250年 250年 One hundred. One hundred.

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

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

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

必需的dll和库

平台

Win32 x64, Linux。

另请参阅

功能

主题

例子

下面的示例应用浮雕面具的位图:

L_INT MaskConvolutionBitmapExample (L_VOID){L_INT nRet;BITMAPHANDLE LeadBitmap;nRet = L_LoadBitmap (MAKE_IMAGE_PATH(文本(“ImageProcessingDemo \ \ NaturalFruits.jpg”&LeadBitmap)),运算符(BITMAPHANDLE), 0 ORDER_BGR空,空);如果(nRet ! =成功)返回nRet;nRet = L_MaskConvolutionBitmap (&LeadBitmap 500, 45岁,3,MSKC_EMBOSS);如果(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领先的技术公司。保留所有权利。