将图像转换为可搜索PDF OCR - WinForms c#

本教程展示了如何创建一个c# Windows WinForms应用程序设置铅OCR OCR引擎的过程。

概述
总结 本教程介绍了如何设置铅OCR引擎在c# Windows WinForms应用程序。
完成时间 30分钟
Visual Studio项目 下载教程项目(10 KB)
平台 c# Windows WinForms应用程序
IDE Visual Studio 2017中,2019年
开发许可 下载LEADTOOLS
试试用另一种语言

所需的知识

熟悉基本的步骤创建一个项目的审查添加引用和设置一个许可证显示图像的图像查看器教程,在工作之前将图像转换为可搜索PDF OCR - WinForms c#教程。

创建项目并添加LEADTOOLS引用

从项目中创建的副本显示图像的图像查看器教程。如果项目不可用,按照这个教程中的步骤创建它。加载图像保存为JPEG的代码不需要从这个教程在本教程中,所以它可以省略。

的引用需要取决于项目的目的。引用可以通过添加一个或另一个下面的两种方法(但不是全部)。对于这个项目,还需要以下引用:

如果使用NuGet引用,本教程需要以下NuGet包和他们的依赖关系:

如果使用本地DLL的引用,下面的DLL是必要的。dll位于< INSTALL_DIR > \ LEADTOOLS22 \ Bin \ Dotnet4 \ x64:

对于一个完整的列表的编解码器dll需要特定的格式,请参考文件格式的支持

设置许可文件

许可解锁项目需要的特性。它必须设置工具箱函数被调用之前。详情,包括教程为不同的平台,请参考设置一个运行时许可

有两种类型的运行时许可证:

请注意

添加LEADTOOLS NuGet和本地引用设置许可中会详细介绍添加引用和设置一个许可证教程。

初始化IOcrEngine代码

解决方案资源管理器,打开Form1.cs。在设计器中右键单击并选择视图代码,或者按F7,将背后的代码形式。确保以下使用全局变量声明和补充道。

c#
/ /添加这些“使用”块顶部使用Leadtools.Ocr;使用Leadtools.Document.Writer;
c#
/ /添加全局变量私人IOcrEngine _ocrEngine;私人IOcrPage _ocrPage;

内添加代码Form1_Load事件处理程序初始化IOcrEngine,所以它变成了如下:

c#
私人无效Form1_Load (对象发送方的EventArgs e){/ /初始化图像查看器对象_view =imageview ();_view。码头= DockStyle.Fill;_view。背景色= Color.DarkGray;_viewer.Zoom (ControlSizeMode。FitWidth, 1.0,LeadPoint ());Controls.Add (_view);_viewer.BringToFront ();/ /初始化OCR引擎_ocrEngine = OcrEngineManager.CreateEngine (OcrEngineType.LEAD);/ /启动引擎_ocrEngine.Startup (,,,@“C: \ LEADTOOLS22 \ Bin \常见\ OcrLEADRuntime”);}

内添加代码openToolStripMenuItem_Click事件处理程序初始化IOcrPage在图像查看器中加载:

c#
私人无效openToolStripMenuItem_Click (对象发送方的EventArgs e){试一试{使用(RasterCodecs编解码器=RasterCodecs ()){OpenFileDialog dlg =OpenFileDialog ();了解地理。InitialDirectory =@“C: \ LEADTOOLS22 \ Resources \图片”;如果(dlg.ShowDialog ()= = DialogResult.OK){_view。形象= codecs.Load (dlg.FileName);}}/ /创建IOcrPage加载图像_ocrPage = _ocrEngine.CreatePage (_view。形象,OcrImageSharingMode.AutoDispose);}(异常交货){MessageBox.Show (ex.ToString ());}}

添加保存为PDF搜索代码

解决方案资源管理器再一次打开Form1.cs。在设计器中,添加一个新的子菜单文件菜单的MenuStrip。设置这个新菜单项的文本保存为pdf搜索。你可以把新项目的名称saveAsSearchablePDFToolStripMenuItem_Click

添加保存为搜索PDF菜单项

双击保存为PDF搜索菜单项来编辑它的事件处理程序。添加以下代码:

c#
私人无效saveAsSearchablePDFToolStripMenuItem_Click (对象发送方的EventArgs e){试一试{/ /创建一个文档使用(IOcrDocument ocrDocument = _ocrEngine.DocumentManager.CreateDocument (,OcrCreateDocumentOptions.AutoDeleteFile)){/ /创建IOcrPage加载图像_ocrPage = _ocrEngine.CreatePage (_view。形象,OcrImageSharingMode.AutoDispose);/ /识别文本_ocrPage.Recognize ();/ /添加页面ocrDocument.Pages.Add (_ocrPage);/ /保存为PDFSaveFileDialog saveDlg =SaveFileDialog ();saveDlg。InitialDirectory =@“C: \ LEADTOOLS22 \ Resources \图片”;saveDlg。过滤器=“Adobe可移植文档格式| * . pdf”;如果(saveDlg.ShowDialog ()! = DialogResult.OK)返回;ocrDocument.Save (saveDlg。文件Name, DocumentFormat.Pdf,);MessageBox.Show ($“OCR输出保存到{saveDlg.FileName}”);}}(异常交货){MessageBox.Show (ex.ToString ());}}

运行该项目

按运行项目F5,或通过选择调试- >开始调试

如果步骤正确之后,应用程序运行并能够加载和显示任何图片上面支持的编解码器过滤器。当保存为PDF搜索压,应用程序识别加载图像中的文本(OCR1。TIF)并保存到指定位置(如搜索PDF)。

总结

本教程展示了如何创建一个简单的Windows窗体OCR应用程序初始化铅OCR引擎,显示指定的输入文件,作为一个可搜索的PDF输出图像。

另请参阅

iOS
188金宝搏的网址客服|支持|联系我们|知识产权的通知
©1991 - 2023领先的技术公司。保留所有权利。