本教程演示如何创建一个c# WinForms应用程序来保存加载在控件中的文件LEADDocument类作为光栅图像格式或文档格式与搜索文本使用文档转换器类。
| 概述 | |
|---|---|
| 总结 | 本教程介绍了如何在c# WinForms应用程序中使用LEADTOOLS文档转换器SDK技术 |
| 完成时间 | 30分钟 |
| Visual Studio项目 | 下载教程项目(9kb) |
| 平台 | WinForms应用程序 |
| IDE | Visual Studio 2019 |
| 开发许可 | 下载LEADTOOLS |
方法熟悉创建文档查看器项目的基本步骤添加引用和设置License而且在文档查看器中显示文件教程,在工作之前使用文档转换器保存文档- WinForms c#教程。
中创建的项目的副本开始在文档查看器中显示文件教程。如果您没有这个项目,请按照该教程中的步骤创建它。
确保项目具有原始教程中提到的必要的LEADTOOLS引用。
如果使用NuGet引用,本教程需要原始教程中已经要求的NuGet包。
或者,如果使用本地DLL引用,除了原始DLL之外,还需要以下DLL。dll位于< INSTALL_DIR > \ LEADTOOLS22 \ Bin \ Dotnet4 \ x64:
Leadtools.Document.Converter.dllLeadtools.Document.Raster.dllLeadtools.Document.Writer.dllLeadtools.Ocr.dllLeadtools.Ocr.LEADEngine.dll有关特定格式所需的Codec dll的完整列表,请参阅文件格式支持.
许可证解锁项目所需的特性。它必须在调用任何工具箱函数之前设置。有关详细信息,包括针对不同平台的教程,请参阅设置运行时License.
有两种类型的运行时许可证:
请注意
中详细介绍了添加LEADTOOLS NuGet和引用以及设置许可添加引用和设置License教程。
随着项目的创建、引用的添加和许可的设置,编码就可以开始了。
在解决方案资源管理器,打开Form1.cs.右键单击设计窗口并选择视图代码或按F7来显示表单后面的代码。将下列语句添加到使用顶部的块:
将以下代码添加到使用布洛克:
//在顶部使用块使用Leadtools.Document.Converter;使用Leadtools.Document.Writer;使用Leadtools.Ocr;使用Leadtools.Codecs;
集DocumentConverter而且ocrEngine作为全局变量:
私人DocumentConverter docConverter;私人IOcrEngine ocrEngine;
添加对a的呼叫InitDocumentConverter ()方法中的Form1 ()代码:
公共Form1 (){InitializeComponent ();SetLicense ();InitDocumentViewer ();InitDocumentConverter ();}
使用下面的代码初始化DocumentConverter并将OCR引擎配置为在转换为具有可搜索文本的文档格式时使用。
私人无效InitDocumentConverter (){documentConverter =新DocumentConverter ();//设置OCR引擎ocrEngine = OcrEngineManager.CreateEngine(ocrengintype . lead);ocrEngine。启动(零,零,零,@“C: \ LEADTOOLS22 \ Bin \常见\ OcrLEADRuntime”);documentConverter。集OcrEngineInstance(ocrEngine,假);//设置Document WriterdocumentConverter。集文档WriterInstance(新DocumentWriter ());}
将下面的代码添加到InitUI ()添加两个按钮,一个按钮用于另存为图像,另一个按钮用于另存为文档。
varsaveAsTifButton =新按钮();saveAsTifButton。Name =“saveAsTifButton”;saveAsTifButton。文本=&另存为图像;saveAsTifButton。宽度= loadButton。宽度* 2;saveAsTifButton。位置=新System.Drawing.Point (loadButton.Location。X + loadButton。宽度,loadButton.Location.Y);saveAsTifButton。点击+= (sender, e) => ConvertToImage(RasterImageFormat.Tif);topPanel.Controls.Add (saveAsTifButton);varsaveAsPDFButton =新按钮();saveAsPDFButton。Name =“saveAsPDFButton”;saveAsPDFButton。文本=“&另存为PDF”;saveAsPDFButton。宽度= loadButton。宽度* 2;saveAsPDFButton。位置=新System.Drawing.Point (saveAsTifButton.Location。X + saveAsTifButton。宽度,saveAsTifButton.Location.Y);saveAsPDFButton。点击+= (sender, e) => ConvertToDocument(DocumentFormat.Pdf);topPanel.Controls.Add (saveAsPDFButton);
使用下面的代码设置用于将加载的文档转换为光栅图像格式并将其保存到磁盘上的方法。
私人无效ConvertToImage (RasterImageFormat imageFormat){如果(是。文档! =零){saveAsImageDlg =新SaveFileDialog ();saveAsImageDlg。InitialDirectory =@“C: \ LEADTOOLS22 \ Resources \图片”;saveAsImageDlg。Filter = $“{imageFormat} | *。{RasterCodecs.GetExtension (imageFormat)}”;如果(saveAsImageDlg。ShowDialog (这) != dialgresult . ok)返回;DocumentConverterJobData jobData = DocumentConverterJobs.CreateJobData文档,saveAsImageDlg。文件名,imageFormat);jobData。JobName =“转换为图像作业”;DocumentConverterJob job = documentConverter.Jobs.CreateJob(jobData);documentConverter.Jobs.RunJob(工作);如果(job.Errors。计数> 0)foreach(var错误在job.Errors)对话框。显示($"转换过程中出现错误:{Error. Error. message}\n");其他的对话框。显示($"已成功将文档保存到{saveAsImageDlg. "文件名}\ n”);}其他的对话框。显示(“请先载入文件”);}
使用下面的代码设置用于将加载的文件转换为文档格式并将其保存到磁盘上的方法。
私人无效ConvertToDocument (DocumentFormat DocumentFormat){如果(是。文档! =零){SaveFileDialog saveAsDocDlg =新SaveFileDialog ();saveAsDocDlg。InitialDirectory =@“C: \ LEADTOOLS22 \ Resources \图片”;saveAsDocDlg。Filter = $“{documentFormat} | *。{DocumentWriter.GetFormatFileExtension (documentFormat)}”;如果(saveAsDocDlg。ShowDialog (这) != dialgresult . ok)返回;DocumentConverterJobData jobData = DocumentConverterJobs.CreateJobData文档,saveAsDocDlg。文件名,documentFormat);jobData。光栅ImageFormat = RasterImageFormat.Unknown;jobData。JobName =“转换为PDF作业”;DocumentConverterJob job = documentConverter.Jobs.CreateJob(jobData);documentConverter.Jobs.RunJob(工作);如果(job.Errors。计数> 0)foreach(var错误在job.Errors)对话框。显示($"转换过程中出现错误:{Error. Error. message}\n");其他的对话框。显示($"成功将文档保存到{saveAsDocDlg. "文件名}\ n”);}其他的对话框。显示(“请先载入文件”);}
按下运行项目F5,或选择调试->开始调试.
如果正确地遵循了这些步骤,应用程序将运行,并允许将任何加载的文档保存为TIF图像或具有可搜索文本的PDF。
本教程展示了如何将DocumentViewer控件中加载的文件转换为光栅图像格式和文档格式。还介绍了如何使用DocumentConverter类。