LeadTools中文入门教程(8):使用OCR识别扫描文件中的中文

发布时间:2014/09/28 00:09 发布者:Linda

返回博客中心

  • LeadTools中文入门教(1):载、显示和保存图像 点击进入
  • LeadTools中文入门教程(2):缩放图像 点击进入
  • LeadTools中文入门教程(3):打印图像 点击进入
  • LeadTools中文入门教程(4):使用OCR识别英文 点击进入
  • LeadTools中文入门教程(5):读取和编写条形码 点击进入
  • LeadTools中文入门教程(6):从TWAIN源获取图像 点击进入
  • LeadTools中文入门教程(7):使用OCR识别图像中的中文 点击进入
  • LeadTools中文入门教程(8):使用OCR识别扫描文件中的中文 点击进入

 

在很多情况下,我们需要将扫描文件中的文本提取出来,转化为文本搜索的格式,如doc、PDF等。LeadTools为开发者提供了快速的、高精度的OCR SDK技术。利用LeadTools OCR工具包,可以快速的开发健壮的、可扩展的、高性能识别的文档处理应用程序,这些应用程序可提取出扫描文件中的文本,将图像转化为文本搜索格式,如PDF、PDF/A、DOC、DOCX、XML、XPS等。

本文主要包括两大部分:

1 “使用OCR识别扫描文件中的中文” 的主要步骤及关键代码片段

2 “使用OCR识别扫描文件中的中文” 的Demo使用讲解及下载

 

主要步骤及关键代码片段

 

步骤1:选择将要使用的引擎类型,并创建IOcrEngine接口的一个实例。

  1: //在本段代码中我们使用了LeadTools OCR Advantage引擎
  2: IOcrEngine ocrEngine = OcrEngineManager.CreateEngine(OcrEngineType.Advantage, false);

 

步骤2:启动引擎。

  1: //使用了默认的参数
  2: ocrEngine.Startup(null, null, null, @"C:\LEADTOOLS 18\Bin\Common\OcrAdvantageRuntime");

 

步骤3:创建一页或多页的OCR文档。

  1: IOcrDocument ocrDocument = ocrEngine.DocumentManager.CreateDocument();
  2: //将多页TIF图像的所有页添加至文档。
  3: ocrDocument.Pages.AddPages(@"C:\Users\Public\Documents\LEADTOOLS Images\Ocr.tif", 1, -1, null);

 

步骤4:自动或手动的在页面中创建区域。

  1: // 自动分区
  2: ocrDocument.Pages.AutoZone(null);

 

步骤5:(可选)设置OCR引擎将要使用语言。

  1: // 启用中文简体
  2: ocrEngine.LanguageManager.EnableLanguages(new string[] { "zh-Hans" });

 

步骤6:(可选)设置拼写检查的语言。

  1: // 启用拼写检查系统,并将英文设置为拼写语言
  2: ocrEngine.SpellCheckManager.SpellCheckEngine = OcrSpellCheckEngine.Native;
  3: ocrEngine.SpellCheckManager.SpellLanguage = "en";

 

步骤7:(可选)设置任意的识别模块选项。

  1: //改变第一个区域的填充方法,设置为默认
  2: OcrZone ocrZone = ocrDocument.Pages[0].Zones[0];
  3: ocrZone.FillMethod = OcrZoneFillMethod.Default;
  4: ocrDocument.Pages[0].Zones[0] = ocrZone;

 

步骤8:识别

  1: ocrDocument.Pages.Recognize(null);

 

步骤9:保存识别结果

  1: // 将结果保存为docx文件
  2: ocrDocument.Save(@"C:\Users\Public\Documents\LEADTOOLS Images\Document.docx", DocumentFormat.Docx, null);
  3: ocrDocument.Dispose();

 

步骤10:结束时关闭OCR引擎

  1: ocrEngine.Shutdown();
  2: ocrEngine.Dispose();

 

更多详细步骤及代码,可参照LeadTools 入门教程 之 使用OCR识别图像中的中文

 

Demo使用讲解及下载

 

下面为您提供了”使用OCR识别扫描文件中的中文“的示例代码。为了运行此代码,您需要下载LeadTools全功能试用版。

下载地址:http://leadtools.grapecity.com.cn/downloads/?category=main

QQ截图20140926102306

安装全功能试用版后,由于此应用程序要识别中文,因此在创建应用程序之前,您还需要下载安装LeadTools OCR语言扩展包。

下载地址:http://leadtools.grapecity.com.cn/downloads/?category=main

1

 

下面就让我们使用本文提供的Demo,识别扫描文件中的中文吧!

1 启动程序。选择您想要使用的引擎类型。本次我们将选择LeadTools Professional OCR引擎。

1

2 启动引擎后,点击文件->打开…将我们要识别的文件打开。如果不只有一个页面,点击页面->插入…将随后的页面添加进来。

原扫描文件的一部分如下图所示:1

将文件添加到应用程序中。

1.1

3 点击引擎->语言…弹出“启用语言”对话框,将中文简体添加到已启用语言中。点击“确定”完成。

1.2

4 点击OCR->识别文档进行识别。若只需识别当前页,点击OCR->识别当前页。此操作会对文档进行自动分区,随后进行识别。结果如下图所示:

2

如果我们不需要识别图片上包含的文字,可以调整自动识别的区域将某些区域删除(右击区域,点击删除即可)。例如下图,若不需识别图片上的文字,红色矩形框标出的区域即可删除。

3

点击OCR->显示识别出的字符…可将识别出的字符显示出来。

4

5 点击OCR->保存文档…可将识别的结果保存为想要的格式,如Adobe PDF、Microsoft Word、Text、HTML等。

QQ截图20140928114422

保存的文档如下图所示:

6

至此,我们使用此应用程序识别出了扫描文件中的中文并保存为Word文档。本博文提供的Demo还包含了其他很多Ocr的功能,如设置拼写检查引擎,拼写语言、相关OMR选项等等。还在等什么!快快下载Demo亲自尝试下吧!

DEMO下载:

 

Demo提供了OCR的多种功能,为了运行此demo,你还需要下载LeadTools试用版,快快点击下载吧!

 

LeadTools试用版下载

了解LeadTools产品更多特性

若您在使用LeadTools的过程中遇到任何问题,欢迎在葡萄城开发者社区LeadTools板块提问,我们的专业技术团队期待您的到来!

点击查看更多LeadTools使用教程、博文


关于葡萄城

赋能开发者!葡萄城是专业的集开发工具、商业智能解决方案、低代码开发平台于一身的软件和服务提供商,为超过 75% 的全球财富 500 强企业提供服务。葡萄城专注控件软件领域30年,希望通过模块化的开发控件、灵活的低代码应用开发平台等一系列开发工具、解决方案和服务,帮助开发者快速响应复杂多变的业务需求,最大程度地发挥开发者的才智和潜能,让开发者的 IT 人生更从容更美好。

了解详情,请访问葡萄城官网