# include“l_bitmap.h”
L_LTIMGCOR_APIL_INTL_InvertedTextBitmap (pBitmap、pInvertedText pfnCallback、pUserData uFlags)
发现并修改反向文本领域1比特黑白图像。
位图句柄指针引用的位图找到反向文本。
指针INVERTEDTEXT结构LEADTOOLS用来发现和正确的反向文本。
可选的回调函数进行额外的处理。
如果你不提供一个回调函数,使用NULL作为该参数的值。如果你提供一个回调函数,使用函数指针作为该参数的值。
回调函数必须遵守所描述的函数原型INVERTEDTEXTCALLBACK函数。
空指针,您可以使用它通过一个或多个回调函数需要额外的参数。
要使用该功能,赋值给一个变量或创建一个结构,其中包含你需要的尽可能多的领域。然后,在这个参数,通过变量的地址或结构,铸造L_VOID *。回调函数,接收地址的pUserData参数,可以把它适当的数据类型的指针来访问变量或结构。
如果不需要额外的参数,该参数可以传递NULL。
保留以供将来使用。必须是0。
价值 | 意义 |
---|---|
成功 | 函数是成功的。 |
< 1 | 一个错误发生。指返回代码。 |
这个函数不支持已签名的数据图像。它返回错误代码ERROR_SIGNED_DATA_NOT_SUPPORTED如果签名数据图像是传递给这个函数。
(文档)这个函数发现并修改反向文本领域中常见的扫描文本文档。下面是一个反向文本的例子:
修改的反向文本收益率以下领域:
这个函数的行为可以通过修改它的回调。
这个函数只能在1比特的黑白图像。
如果一个地区被选中,只有选择的地区将会改变了这个函数。如果没有选中区域,整个图像处理。
这个函数不支持32位灰度图像。它返回错误代码ERROR_GRAY32_UNSUPPORTED如果一个32位的灰度图像是传递给这个函数。
必需的dll和库
Win32 x64, Linux。
这个例子中找到所有反向文本区域大于5英寸宽度和1/2英寸高
和反转文本,这样看起来正常。
回调用于显示关于反向文本区域的附加信息。
回调不返回一个地区。
函数返回的领先地区是显示所有的变化。
L_INT EXT_CALLBACK InvertedTextCB (HRGN HRGN, PRECT pBoundingRect, L_INT32 iWhiteCount, L_INT32 iBlackCount, L_VOID * pUserData)
{
UNREFERENCED_PARAMETER (pUserData);
L_TCHAR szMsg [200];
/ /注意:没有hRgn删除,因为它没有要求
矩形rcRect;
GetRgnBox (hRgn &rcRect);
wsprintf (
szMsg,
文本(区域范围:左= % d,右= % d,顶级= % d,底部= % d \ n "),
rcRect。离开了,rcRect。rcRect。前,rcRect.bottom);
OutputDebugString (szMsg);
DeleteObject (hRgn);
wsprintf (szMsg
文本(“大小(%)% d) \ tBounds [% d % d] [% d % d] \ tWhiteCount [% d] \ tBlackCount % d \ n”),
pBoundingRect - >左,
pBoundingRect - >,
pBoundingRect - >对,
pBoundingRect - >,
iWhiteCount,
iBlackCount);
OutputDebugString (szMsg);
返回SUCCESS_REMOVE;
}
L_INT InvertedTextBitmapExample (pBITMAPHANDLE pBitmap)
{
L_INT32 nRet;
BITMAPHANDLE BitmapRegion;
INVERTEDTEXT;
memset (&BitmapRegion 0运算符(BITMAPHANDLE));
它。uStructSize =运算符(INVERTEDTEXT);
/ /单位是英寸的四舍五入
它。iMinInvertWidth = 6000;
它。iMinInvertHeight = 375;
它。iMinBlackPercent = 75;
它。iMaxBlackPercent = 95;
它。pBitmapRegion = &BitmapRegion;
它。uBitmapStructSize =运算符(BITMAPHANDLE);
它。uFlags = INVERTEDTEXT_SINGLE_REGION | INVERTEDTEXT_LEAD_REGION | INVERTEDTEXT_USE_DPI | INVERTEDTEXT_CALLBACK_REGION;
nRet = L_InvertedTextBitmap (pBitmap,
创新性,
InvertedTextCB,
零(0);
如果(nRet = =成功)
{
矩形rectRgn;
/ /删除现有的地区
L_FreeBitmapRgn (pBitmap);
nRet = L_GetBitmapRgnBounds(它。零,pBitmapRegion &rectRgn);
如果(nRet ! =成功)
返回nRet;
如果(! IsRectEmpty (&rectRgn))
{
nRet = L_CopyBitmapHandle (pBitmap it.pBitmapRegion,运算符(BITMAPHANDLE));
如果(nRet ! =成功)
返回nRet;
}
}
其他的
{
返回nRet;
}
返回成功;
}
帮助收藏
光栅net|C API|c++类库|HTML5 JavaScript
文档net|C API|c++类库|HTML5 JavaScript
医疗net|C API|c++类库|HTML5 JavaScript
医疗Web查看器net
188宝金博怎么下载
支持的平台上
net, Java, Android和iOS / macOS组件
C / c++类库的API
HTML5 JavaScript库
你的邮件已经发送到支持!有人应该联系!如果你的问题是紧急请回到聊天。
聊天时间:
周一——周五,上午6点等
谢谢你的反馈!
请填写表单重新开始一个新的聊天。
所有代理目前离线。
聊天时间:
周一-周五
早上8:30 - 6点
联系我们请填写这张表格,我们将通过电子邮件联系你。