【示例教程】LEADTOOLS中如何通过OCR识别获取每一行文本 LEADTOOLS可帮您开发出功能强大的文档图像应用程序。其主要功能包括综合图像注释,专业的黑白图像显示(例如灰度级和偏黑),以及专业的黑白图像处理。其它功能包括对黑白图像的性能和内存进行优化,文档图像清理(包括倒置文本,去边界,去打孔机和去线)以及使用LEADTOOLS Fast TWAIN和WIA进行扫描。
本篇文介绍如何通过OCR分别识别获取文档的每一行文本。有一种方法类似于我们的IOcrZoneCharacters.GetWords方法可检索文档的每一行。OCR引擎识别的每个字符都有一个位置。我们可以通过OcrCharacter 结构的position 属性访问这个位置。返回一个或多个OcrCharacterPosition 枚举成员:
下面写了一个简单的小例子,用OcrCharacterPosition 来分别识别出每一行的文字。
using (RasterCodecs codecs = new RasterCodecs())
{
codecs.Options.RasterizeDocument.Load.XResolution = 300;
codecs.Options.RasterizeDocument.Load.YResolution = 300;
RasterImage image = codecs.Load(inputFile);
using (IOcrEngine ocrEngine = OcrEngineManager.CreateEngine(OcrEngineType.Professional, false))
{
ocrEngine.Startup(null, null, null, @"C:\LEADTOOLS 19\Bin\Common\OcrProfessionalRuntime64");
using (IOcrDocument document = ocrEngine.DocumentManager.CreateDocument())
{
document.Pages.AddPage(image, null);
document.Pages[0].Recognize(null);
IOcrPageCharacters pageCharacters = document.Pages[0].GetRecognizedCharacters();
for (int i = 0; i < document.Pages[0].Zones.Count; i++)
{
IOcrZoneCharacters zoneCharacters = pageCharacters.FindZoneCharacters(i);
if (zoneCharacters != null)
{
foreach (var ocrCharacter in zoneCharacters)
{
OcrCharacterPosition position;
position = ocrCharacter.Position;
if ((position & OcrCharacterPosition.EndOfLine) == OcrCharacterPosition.EndOfLine)
{
Console.Write(ocrCharacter.Code + "\n");
}
else
{
Console.Write(ocrCharacter.Code);
}
}
}
}
}
}
}
2017慧都十四周年狂欢搞事情!砸金蛋100%抽现金红包、满额豪送iPhone X、iPhone 8、DevExpress汉化免费送、团队升级培训套包劲省10万元......更多惊喜等您来探索!

未发布 jQuery JavaScript的综合性UI组件库jQWidgets更新至v4.5.1丨附下载 jQWidgets是一个基于jQuery JavaScript的综合性和创新性的HTML5 UI组件库,旨在帮助开发者创建专业、跨平台的Web应用程序,并最大限度的节省开发时间。jQWidgets包含30多种UI组件,是最快的JavaScript UI框架之一。
【最新版jQWidgets v4.5.1点击下载>>>】
jQWidgets v4.5.1更新内容:
改进:
修复:
修复了当decimalSeparator为“,”时,jqxNumberInput中关于移动设备行为的问题。
修复了jqxScheduler中关于exactTimeRendering功能的问题,2天中会出现同一个预约。
修复了jqxScheduler中当没有聚焦单元格时对话框会打开的问题。
修复了关于jqxPopover中showArrowButton属性被动态设置的问题。
修复了jqxGrid中关于“复选框”列中工具提示的问题。
修复了jqxGrid中关于剪贴板粘贴功能的问题。
修复了jqxGrid中当网格行详细信息和聚合功能分组启用时切换箭头显示的问题。
修复了jqxGrid中关于分组聚合渲染逻辑的的问题。
修复了jqxGrid中关于过滤器行下拉列表和“全选”项的问题。
修复了jqxGrid中当按下“ESC”并且在源对象中定义了“updaterow”时关于全行编辑的问题。
修复了jqxDataTable中关于服务器端过滤的的问题。
修复了jqxWindow中关于动态启用/禁用窗口拖动的问题。
修复了jqxWindow中关于关闭模式窗口后Tab键导航的问题。
修复了jqxTabs中当关闭按钮被启用时有关setTitleAt方法的问题。
修复了jqxRibbon中关于animationType:“slide”的问题。
修复了jqxWindow中关于Internet Explorer“销毁”方法的问题。
阅读原文>>>
未发布 集成的HTTP嗅探器HttpWatch更新至v11.0.21,改进F5刷新机制 HttpWatch是一款集成的HTTP嗅探器,为IE和Firefox提供新的方法以查看您网站的负载和运行情况。你可以直接在浏览器中调试由web页面生成的网络流量,而无需切换到一个单独的工具。
2017慧都十四周年狂欢搞事情!砸金蛋100%抽现金红包、满额豪送iPhone X、iPhone 8、DevExpress汉化免费送、团队升级培训套包劲省10万元......更多惊喜等您来探索!

未发布 Xamarin for Visual Studio v4.6发布,重新设计属性页和Manifest编辑器 Xamarin for Visual Studio 让开发者可以在Windows上用 Visual Studio 开发原生 iOS, Android 和Windows应用程序。Xamarin for Visual Studio提供了流畅的iOS和Android的API查询,让开发者专注于应用本身。更棒的是,开发者完全可以利用一切他熟悉的开发工具进行开发,从而保证项目的高效性和持续性。 V4.6版本中包含的功能:
属性页和Manifest重新设计
在Xamarin 4.6中,我们重新设计了属性页和Manifest编辑器的重新设计,添加了一个新的编辑器:授权编辑器。
新的授权编辑器
新的编辑器现在是一个独立的编辑器。它的设计方式更加简单有效,双击你的entitlements.plist文件来启动。它的UI非常友好,用户可以轻松浏览和运用。
Bug修复
此版本包括以下问题修复:
iOS设备列表模拟器在更改iOS版本时不会更新。(4.6.0.289)
修复VS在创建主机发现时挂起Zeroconf的问题。(4.6.0.289)
SayGoodbye目标在创建iOS库时失败。(4.6.0.279)
MSBuild过程由于XMA监控而产生较高的CPU使用率。(4.6.0.279)
在某些情况下重新连接后,Mac Agent图标不会更新。(4.6.0.279)
在设置中无法手动选择Xcode路径。(4.6.0.279)
Android存档 - 向用户发出关于所需的密钥库备份的信息,并有助于将其复制到其他位置。(4.6.0.279)
无法在Visual Studio 2017中打开名为“资产”的目录。(4.6.0.279)
VS不会在新的iOS项目的.plist文件中设置MinimumOSVersion键。(4.6.0.279)
“链接器行为”下拉列表显示MtouchLink属性的“Don't Lin”默认值不正确。(4.6.0.279)
在Mac Server连接对话框上显示Xamarin.iOS兼容性错误。(4.6.0.279)
未选择数据源类时,不会禁用支持的系列和并发组。(4.6.0.279)
更改连接流程,以便在打开解决方案自动连接时不显示任何对话框。(4.6.0.279)
将UWP项目设置为启动项目时,设置正确的配置平台。(4.6.0.279)
tvOS绑定项目创建失败并出现多个错误。(4.6.0.279)
在某些情况下,Visual Studio挂起ZeroConf (4.6.0.279)
由于XMA上的进程监视器不正确,MSBuild进程会产生高CPU使用率。(4.6.0.240)
建立iOS库时,SayGoobye目标失败。(4.6.0.240)
本地静态参考(.a)源文件在构建后最终以0 Kb为单位。(4.6.0.240)
Android属性页面上的打字错误。(4.6.0.240)
F#Android项目无法构建。(4.6.0.240)
关于部署WatchOS应用程序的System.IO.FileNotFoundException异常。(4.6.0.240)
几个连接可靠性Mac代理修复。(4.6.0.240)
Android Library模板包含资源文件。(4.6.0.240)
Android项目模板不会生成mipmap图标。(4.6.0.240)
无法在调试模式下解除tvOS扩展应用[电视服务扩展]。设备下拉菜单中没有tvOS模拟器。(4.6.0.240)
Visual Studio崩溃,试图启动没有运行的Android应用程序。(4.6.0.240)
将默认模式下的watchOS设置为默认模拟器。(4.6.0.240)
已知的问题
创建会因错误取消:Project'project_name '需要在你的计算机上安装以下组件:...
构建Android应用程序可能需要安装其他组件。这几种情况下可能需要,例如使用新组件、NuGet软件包,或者是你在计算机上构建的第一个Xamarin.Forms解决方案。
Xamarin for Visual Studio检测到资源的缺失,并显示错误信息,要求下载并安装它们:
双击列表中的错误,开始下载并安装缺少的组件。
请记住,你需要在列表中看到Intellisense错误。
如果你尝试在解决方案中创建任何项目,而不安装缺少的组件,那么创建将被取消。
安装缺少组件的可选方法是从命令行中创建。
其他已知问题
如果你在使用此版本后降级为Xamarin 4.2或更低版本,则需要在Mac Server对话框中重新注册已知的Mac服务器。请使用“忘记Mac”选项,并再次配置服务器连接。
试用、下载、了解更多产品信息请点击"咨询在线客服"
未发布 .NET Core 2将Visual Basic带到了Linux和macOS平台 Microsoft已经愈加接近将Visual Basic划为.NET Core平台上的一等公民。作为.NET Core 2发行版的一部分,VB开发者现在可以编写针对.NET Standard 2.0的控制台应用程序和类库,并且可以兼容多个平台。这就意味着运行在Windows上的可执行文件或者类库也能够运行在macOS和Linux上。 一旦安装了.NET Core 2 SDK,你就可以开始创建VB项目了。由于这是.NET Core平台,Visual Studio有助于编码,但是它并不是必需的。.NET Core 2.0中有四个VB模板: - 控制台应用程序:Hello World程序样例
- 类库
- 单元测试工程
- xUnit单元测试工程
在命令提示行中,你可以执行:
dotnet –version
来确认你使用的是.NET Core 2.0版本或者是更高的版本。然后你需要创建一个新目录来保存你的工程,并且运行dotnet new来根据其中一个模板创建一个新工程。之后,执行dotnet run来运行这个工程:
mkdir vbcore
cd vbcore
dotnet new console -lang VB
dotnet run
但是这并不意味着Microsoft的工作都已经全部完成,因为目前还有剩余任务要做,例如,让.NET Core平台上的VB开发者拥有使用ASP .NET Core的能力。Microsofs 的Immo Landwerth说,针对于此的模版尚在进行中,这个版本尚不可用。尽管如此,VB开发者现在可以针对macOS和Linux编写跨平台代码了,在此之前,这是不可能完成的。
未发布 3D造型引擎3D ACIS Modeling 发布2018.1.0版本 3D ACIS® Modeler (ACIS) 是 Spatial 久负盛名的 3D 造型引擎,为超过 350 种客户应用程序所采用,全球应用量超过 150 万套。ACIS 采用面向对象的开放 C++ 架构,拥有强大的 3D 造型能力。ACIS 集成了线框、曲面和实体造型的功能,支持流形和非流形拓扑,具备非常丰富的几何运算集,因此非常适用于构建具有混合造型功能的 3D 应用程序。
ACIS不仅具备非常完善的 3D 造型功能,而且灵活性强,可满足各种应用程序要求。此外,3D Modeling 的 ACIS 扩展功能还能满足特定的应用需求,其中包括隐藏线去除、可变形造型、高级遮盖和特征去除。
试用、下载、了解更多产品信息请点击"咨询在线客服"