L_AnnSetTransparentColor

# include“l_bitmap.h”

L_LTANN_APIL_INTL_AnnSetTransparentColor (hObject crTransparent uFlags)

设置要使用的颜色为透明色。

参数

HANNOBJECThObject

注释对象的句柄。

也就是说crTransparent

填充颜色。标准的Windows值也代表红色,绿色和蓝色的颜色值,或者索引位图的调色板。COLORREF值格式0 x00bbggrr代表了蓝色,绿色,和红色为指定的像素颜色值,0 xbb是蓝色值,0 xgg是绿色的价值和0 xrr是红色的价值。也就是说如果0 x01000000中设置的值(0 x010000zz),低8位(0 xzz)代表一个索引的位图调色板的颜色值。也就是说这些值可以用于任何Windows COLORREF参数的函数和宏。

文档和医疗成像工具包也可能代表一个16位灰度值如果pBitmap 12或16位灰度位图。这样值是不会与一个RGB值混淆,COLORREF_GRAY16面具(0 x04000000)。在这种情况下(0 x0400yyyy)的低16位(0 xyyyy)也代表了16位灰度值。(0 x0400ffff 16位白人和0 x04000000is 16位黑人)。这不是一个标准的Windows的价值。因此,LEADTOOLS函数将识别COLORREF这种格式,但Windows功能不会。信息如何使用一个16位灰度COLORREF non-LEADTOOLS功能,请参考L_GetPixelColor

L_UINTuFlags

旗帜,确定哪些对象的过程。大部分的旗帜只适用于容器对象。在适当的时候可以结合值通过使用位或(|)。以下是有效值:

价值 意义
0 过程只有指定的对象。
ANNFLAG_SELECTED [0 x0001]过程只有对象选择的属性设置为TRUE。为获取和设置选中的属性,使用L_AnnGetSelectedL_AnnSetSelected功能。
ANNFLAG_NOTTHIS [0 x0004]过程只有一个对象在指定的容器内,容器本身。如果有容器在容器内,他们被修改,但对象则不是。
ANNFLAG_RECURSE [0 x0008]过程对象在一个容器中,并在任何subcontainers,任何级别。
ANNFLAG_NOTCONTAINER [0 x0002](用于ANNFLAG_RECURSE)过程对象在容器中,容器本身。
ANNFLAG_NOINVALIDATE [0 x0010]不无效矩形窗口的影响。使用这个来避免产生多余的油漆的消息。
ANNFLAG_CHECKMENU [0 x0020]过程对象只有在ANNAUTOTEXT_MENU_TRANSPARENTCOLOR菜单项被选中。

返回

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

评论

L_AnnSetTransparentColor函数是有效的只有以下对象类型时,使用位图:

此外,自动化对象存储透明度设置默认设置和其他对象。

一个透明的颜色不是图像时绘制的画。只有在使用这个透明颜色对象设置为透明的使用L_AnnSetTransparent

默认情况下,透明的颜色是白色的(0 x00ffffff)。

如果hObject是一个容器对象,然后呢uFlags表明哪些对象来处理。如果hObject是一个自动化对象,这个自动化对象创建的所有对象将有这个透明的颜色。

在设计模式下,透明的颜色可以选择,选择透明颜色的属性菜单。如果对象的位图调色板,会出现一个对话框,可以选择一个颜色调色板的颜色。如果位图对象没有一个调色板,标准的Windows的颜色选择对话框用于选择一个透明的颜色。

调用L_AnnGetTransparent函数来得到一个值,指示是否正在使用的位图的注释对象用一个透明的颜色。调用L_AnnGetTransparentColor函数来得到一个值,表明所使用的是哪种颜色为透明色。

必需的dll和库

平台

x64 Win32。

另请参阅

功能

主题

例子

L_INT EXT_CALLBACK annEnumCallback (HANNOBJECT hObject L_VOID * pUserData){UNREFERENCED_PARAMETER (pUserData);L_UINT类型;也就是说TransColor;L_INT nRet;L_AnnGetType (hObject接线箱);开关(类型){情况下ANNOBJECT_STAMP:nRet = L_AnnGetTransparentColor (hObject &TransColor);如果(nRet = =成功){如果(TransColor ! = RGB (0, 0, 0)){对话框(NULL,文本(“透明颜色。”),文本(”“),MB_OK);L_AnnSetTransparent (hObject,真的,0);TransColor = RGB (0, 0, 0);L_AnnSetTransparentColor (hObject TransColor 0);}}其他的对话框(NULL,文本(“错误得到透明的颜色。”),文本(”“),MB_OK);打破;默认的:对话框(NULL,文本(“对象必须是邮票。”),文本(”“),MB_OK);}返回成功;}L_INT AnnSetTransparentColorExample (HANNOBJECT hContainer){L_INT nRet;nRet = L_AnnEnumerate (hContainer ANNENUMCALLBACK ANNENUMCALLBACK, NULL, ANNFLAG_RECURSE | ANNFLAG_SELECTED, NULL);如果(nRet ! =成功)返回nRet;返回成功;}
LEADTOOLS光栅成像C API的帮助
188金宝搏的网址客服|支持|联系我们|知识产权的通知
©1991 - 2021领先的技术公司。保留所有权利。