←Select platform

DocumentConverter Class

Summary

Supports conversion from any type of document to another using SVG, OCR and Raster technologies.

Syntax
C#
C++/CLI
Java
Python
public class DocumentConverter : IDisposable 
public ref class DocumentConverter 
public class DocumentConverter 
class DocumentConverter(IDisposable): 
Remarks

The DocumentConverter allows conversion from any type of document to another with minimal amount of code.

The input and output document types can be any type of file formats supported by LEADTOOLS. but not limited to:

  • Adobe Acrobat PDF and PDF/A

  • Microsoft Office DOCX/DOC, XLSX/XLS and PPTX/PPT

  • CAD formats such as DXF, DWG and DWF

  • TIFF, JPEG, PNG, EXIF, BMP and hundred more raster image formats

  • Plain Text and RTF

  • HTML

  • ePub

The DocumentConverter class will analyze the input and output documents types and then automatically uses a combination of the LEADTOOLS Raster, SVG and OCR engines to convert the data using the best possible combination of accuracy and speed. Each conversion operation is called a Document Converter Job in the framework.

Example
C#
Java
using Leadtools; 
using Leadtools.Codecs; 
using Leadtools.Document.Writer; 
using Leadtools.Svg; 
using LeadtoolsExamples.Common; 
using Leadtools.Document; 
using Leadtools.Caching; 
using Leadtools.Annotations.Engine; 
using Leadtools.Ocr; 
using Leadtools.Document.Converter; 
using Leadtools.Annotations.Rendering; 
 
public void DocumentConverterExample() 
{ 
   using (DocumentConverter documentConverter = new DocumentConverter()) 
   { 
      var inFile = Path.Combine(ImagesPath.Path, @"Leadtools.docx"); 
      var outFile = Path.Combine(ImagesPath.Path, @"output.pdf"); 
      var format = DocumentFormat.Pdf; 
      var jobData = DocumentConverterJobs.CreateJobData(inFile, outFile, format); 
      jobData.JobName = "conversion job"; 
 
      var documentWriter = new DocumentWriter(); 
      documentConverter.SetDocumentWriterInstance(documentWriter); 
 
      var renderingEngine = new AnnWinFormsRenderingEngine(); 
      documentConverter.SetAnnRenderingEngineInstance(renderingEngine); 
 
      var job = documentConverter.Jobs.CreateJob(jobData); 
      documentConverter.Jobs.RunJob(job); 
 
      if (job.Status == DocumentConverterJobStatus.Success) 
      { 
         Console.WriteLine("Success"); 
      } 
      else 
      { 
         Console.WriteLine("{0} Errors", job.Status); 
         foreach (var error in job.Errors) 
         { 
            Console.WriteLine("  {0} at {1}: {2}", error.Operation, error.InputDocumentPageNumber, error.Error.Message); 
         } 
      } 
   } 
} 
 
import static org.junit.Assert.assertTrue; 
 
import java.io.File; 
import java.io.FileOutputStream; 
import java.io.IOException; 
import java.net.URI; 
import java.util.concurrent.Executors; 
import java.util.logging.ConsoleHandler; 
import java.util.logging.Handler; 
import java.util.logging.Level; 
import java.util.logging.Logger; 
 
import org.junit.*; 
import org.junit.runner.JUnitCore; 
import org.junit.runner.Result; 
import org.junit.runner.notification.Failure; 
 
import leadtools.*; 
import leadtools.annotations.rendering.AnnJavaRenderingEngine; 
import leadtools.caching.FileCache; 
import leadtools.codecs.*; 
import leadtools.document.DocumentFactory; 
import leadtools.document.DownloadDocumentOptions; 
import leadtools.document.LEADDocument; 
import leadtools.document.LoadDocumentOptions; 
import leadtools.document.LoadFromCacheOptions; 
import leadtools.document.UploadDocumentOptions; 
import leadtools.document.converter.DocumentConverter; 
import leadtools.document.converter.DocumentConverterEmptyPageMode; 
import leadtools.document.converter.DocumentConverterJob; 
import leadtools.document.converter.DocumentConverterJobData; 
import leadtools.document.converter.DocumentConverterJobError; 
import leadtools.document.converter.DocumentConverterJobErrorMode; 
import leadtools.document.converter.DocumentConverterJobStatus; 
import leadtools.document.converter.DocumentConverterJobs; 
import leadtools.document.writer.DocumentFormat; 
import leadtools.document.writer.DocumentWriter; 
import leadtools.ocr.OcrEngine; 
import leadtools.ocr.OcrEngineManager; 
import leadtools.ocr.OcrEngineType; 
 
 
public void documentConverterExample() { 
 
   String LEAD_VARS_ImagesDir = "C:\\LEADTOOLS23\\Resources\\Images"; 
   DocumentConverter documentConverter = new DocumentConverter(); 
   String inFile = combine(LEAD_VARS_ImagesDir, "Leadtools.pdf"); 
   String outFile = combine(LEAD_VARS_ImagesDir, "output.docx"); 
   DocumentFormat format = DocumentFormat.DOCX; 
   DocumentConverterJobData jobData = DocumentConverterJobs.createJobData(inFile, outFile, format); 
   jobData.setJobName("Conversion Job"); 
 
   documentConverter.setDocumentWriterInstance(new DocumentWriter()); 
   documentConverter.setAnnRenderingEngineInstance(new AnnJavaRenderingEngine()); 
   RasterDefaults.setExecutorService(Executors.newFixedThreadPool(5)); 
 
   DocumentConverterJob job = documentConverter.getJobs().createJob(jobData); 
   documentConverter.getJobs().runJob(job); 
   assertTrue(job.getStatus() == DocumentConverterJobStatus.SUCCESS); 
   if (job.getStatus() == DocumentConverterJobStatus.SUCCESS) { 
      System.out.println("Success!"); 
   } else { 
      for (DocumentConverterJobError error : job.getErrors()) { 
         System.out.println(error.getError().toString()); 
      } 
   } 
} 
Requirements

Target Platforms

Help Version 23.0.2024.2.29
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2024 LEAD Technologies, Inc. All Rights Reserved.

Leadtools.Document.Converter Assembly
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2023 LEAD Technologies, Inc. All Rights Reserved.