控件中添加和删除页面LEADDocument
在Java应用程序中使用LEADTOOLS SDK。
概述 | |
---|---|
总结 | 本教程介绍如何创建一个虚拟LEADDocument ,在其中添加和删除页面,并将文档导出到Java应用程序中的磁盘。 |
完成时间 | 30分钟 |
项目 | 下载教程项目(2kb) |
平台 | Java应用程序 |
IDE | Eclipse / IntelliJ |
运行许可证 | 下载LEADTOOLS |
用另一种语言试试 |
|
步骤熟悉创建项目的基本步骤添加引用和设置License教程,在工作之前从LEADDocument中添加和删除页面教程。
中创建的项目的副本开始添加引用和设置License教程。如果该项目不可用,请按照该教程中的步骤创建它。
所需要的参考资料取决于项目的目的。引用可以由本地添加. jar
档案位于< INSTALL_DIR > \ LEADTOOLS22 \ Bin \ Java
。
本项目需要参考资料如下:
leadtools.jar
leadtools.annotations.engine.jar
leadtools.codecs.jar
leadtools.caching.jar
leadtools.document.jar
leadtools.document.converter.jar
leadtools.document.pdf.jar
leadtools.document.raster.jar
leadtools.document.writer.jar
leadtools.drawing.jar
leadtools.imageprocessing.core.jar
leadtools.ocr.jar
leadtools.pdf.jar
leadtools.svg.jar
有关应用程序需要哪些JAR文件的完整列表,请参阅Java应用程序中包含的文件
许可证解锁项目所需的特性。它必须在调用任何工具箱函数之前设置。有关详细信息,包括针对不同平台的教程,请参阅设置运行时License。
有两种类型的运行时许可证:
请注意
中更详细地介绍了添加LEADTOOLS引用和设置许可添加引用和设置License教程。
随着项目的创建、引用的添加和许可的设置,编码就可以开始了。
打开_Main.java
类Package Explorer。将下列语句添加到进口
顶部的块。
进口. io . *;
进口java.nio.file.Files;
进口java.nio.file.Paths;
进口leadtools。*;
进口leadtools.codecs。*;
进口leadtools.document。*;
进口leadtools.document.converter。*;
进口leadtools.document.writer。*;
进口leadtools.ocr。*;
在run ()
方法,添加以下命令将库路径设置为C DLL文件所在的位置,并加载之前导入的LEADTOOLS库。
公共静态无效main (String [] args)抛出IOException
{
新_Main () .run (args);
}
私人无效运行(字符串[]args) {
试一试{
Platform.setLibPath (“C: \ \ LEADTOOLS22 \ \ Bin \ \ CDLL \ \ x64”);
Platform.loadLibrary (LTLibrary.LEADTOOLS);
Platform.loadLibrary (LTLibrary.CODECS);
Platform.loadLibrary (LTLibrary.DOCUMENT);
Platform.loadLibrary (LTLibrary.DOCUMENT_CONVERTER);
Platform.loadLibrary (LTLibrary.DOCUMENT_WRITER);
Platform.loadLibrary (LTLibrary.IMAGE_PROCESSING_CORE);
Platform.loadLibrary (LTLibrary.OCR);
SetLicense ();
}
抓(例外ex) {
System.err.println (ex.getMessage ());
ex.printStackTrace ();
}
}
在run ()
方法的调用下面添加以下代码SetLicense ()
方法创建新的虚拟对象LEADDocument
。
//创建并加载主文档
CreateDocumentOptions =新CreateDocumentOptions ();
createOptions.setUseCache (真正的);
LEADDocument virtualDocument = DocumentFactory.create(createOptions);
请注意
虚拟文档是
LEADDocument
对象,该对象存在于内存中,用于构造由来自各种文档文件的页面组成的文档。一旦准备好将虚拟文档变成物理文档文件或“最终确定”它,就可以设置LEADDocument
在主题是
,或使用DocumentConverter
类。
属性中添加三个新方法_Main
类insertPagesFromFile
,removeDocumentPage
而且saveDocument
。方法中调用这些方法run ()
方法,如下所示。
公共静态无效main (String [] args)抛出IOException
{
新_Main () .run (args);
}
私人无效运行(字符串[]args) {
试一试{
Platform.setLibPath (“C: \ \ LEADTOOLS22 \ \ Bin \ \ CDLL \ \ x64”);
Platform.loadLibrary (LTLibrary.LEADTOOLS);
Platform.loadLibrary (LTLibrary.CODECS);
Platform.loadLibrary (LTLibrary.DOCUMENT);
Platform.loadLibrary (LTLibrary.DOCUMENT_CONVERTER);
Platform.loadLibrary (LTLibrary.DOCUMENT_WRITER);
Platform.loadLibrary (LTLibrary.IMAGE_PROCESSING_CORE);
Platform.loadLibrary (LTLibrary.OCR);
SetLicense ();
//创建并加载主文档
CreateDocumentOptions =新CreateDocumentOptions ();
createOptions.setUseCache (真正的);
LEADDocument virtualDocument = DocumentFactory.create(createOptions);
insertPagesFromFile (virtualDocument“C: \ \ LEADTOOLS22 \ \ \ \ \ \图片资源leadtools.pdf”, 0);
//插入一个外部文档页到位置3
insertPagesFromFile (virtualDocument“C: \ \ LEADTOOLS22 \ \ \ \ \ \图片资源ocr1.emf”3);
//从合并的文档中删除第一页
removeDocumentPage (virtualDocument 0);
//保存合并的文档
saveDocument (virtualDocument“C: \ \ Temp \ \ combined.pdf”);
}
抓(例外ex) {
System.err.println (ex.getMessage ());
ex.printStackTrace ();
}
}
将下面的代码添加到insertPagesFromFile ()
方法将页面添加到虚拟对象LEADDocument
从文档文件。
无效插入文件mainDocument,字符串文件名intinsertPosition)
{
LoadDocumentOptions loadOptions =新LoadDocumentOptions ();
loadOptions.setUseCache (真正的);
LEADDocument loadedDocument = DocumentFactory。loadFromFile(文件名,loadOptions);
mainDocument.getPages()。addAll (insertPosition loadedDocument.getPages ());
}
将以下代码添加到removeDocumentPage ()
方法删除DocumentPage
从LEADDocument
。
无效removeDocumentPage (LEADDocument mainDocument,intpageNumber)
{
mainDocument.getPages () .remove (pageNumber);
}
将下面的代码添加到saveDocument
“最终确定”虚拟LEADDocument
通过使用DocumentConverter
类将文档导出为PDF格式到磁盘。
无效saveDocument(LEADDocument文档,字符串输出文件)
{
OcrEngine OcrEngine = OcrEngineManager.createEngine(ocrengintype . lead);
docConverter =新DocumentConverter ();
docWriter =新DocumentWriter ();
ocrEngine.startup (新docWriter RasterCodecs (),零,零);
docConverter.setDocumentWriterInstance (docWriter);
docConverter.setOcrEngineInstance (ocrEngine真正的);
DocumentConverterJobData jobData = DocumentConverterJobs。createJobData(文档,outputFile, DocumentFormat.PDF);
jobData.setJobName (“DocumentConversion”);
RasterDefaults.setExecutorService (java.util.concurrent.Executors.newFixedThreadPool (5));
DocumentConverterJob job = docConverter.getJobs().createJob(jobData);
docConverter.getJobs () .runJob(工作);
如果(job.getErrors().size() > 0)
为(DocumentConverterJobError错误:job.getErrors())
System.out.println (\文件转换过程中出现错误:"+ error.getError () .getMessage ());
其他的
System.out.println ("已成功将文档保存到"+ outputFile);
}
按下运行项目Ctrl + F11,或选择运行->运行。
如果正确地遵循了这些步骤,应用程序将运行并将两个文件中的页面合并到一个文档中,从合并的文档中删除一个页面,然后将文档保存为PDF格式到磁盘。
方法操作文档中的页面LEADDocument
类,然后将结果文档保存为PDF格式。此外,它还介绍了如何使用DocumentConverter
类。