←Select platform

SetOcrEngineInstance Method

Summary

Sets the engine instance to use when converting documents using OCR.

Syntax
C#
VB
C++
Java
public void SetOcrEngineInstance( 
   IOcrEngine instance, 
   bool autoDispose 
) 
Public Sub SetOcrEngineInstance( 
   ByVal instance As IOcrEngine, 
   ByVal autoDispose As Boolean 
) 
public:  
   void SetOcrEngineInstance( 
      IOcrEngine^ instance, 
      bool autoDispose 
   ) 
public void setOcrEngineInstance(OcrEngine instance, boolean autoDispose) 

Parameters

instance

The OCR engine instance to use when converting documents. If this is not null, then the engine must be initialized and started.

autoDispose

true to transfer ownership of instance to this document converter and automatically dispose it when the DocumentConverter is disposed; otherwise, false to not transfer ownership and not dispose instance when this DocumentConverter is disposed.

Remarks

The IOcrEngine instance passed to this method will be used when the DocumentConverter uses OCR for the conversion. This DocumentConverter does not create its own IOcrEngine and will throw an error if the user instruct it to use OCR without a previously set instance.

OcrEngineInstance will return the same value passed for instance.

The previously set IOcrEngine is removed and optionally disposed if it was set with autoDispose value of true. If instance is null, the previously set instance is removed and this DocumentConverter will not have an IOcrEngine instance.

Example
C#
VB
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 DocumentConverterOptionsExample() 
{ 
   using (DocumentConverter documentConverter = new DocumentConverter()) 
   { 
      //use options to force ocr conversion (disable SVG) 
      documentConverter.Options.EnableSvgConversion = false; 
      //abort job at first error (in any page) 
      documentConverter.Options.JobErrorMode = DocumentConverterJobErrorMode.Abort; 
 
      var ocrEngine = OcrEngineManager.CreateEngine(OcrEngineType.LEAD); 
      var rasterCodecs = new RasterCodecs(); 
      var documentWriter = new DocumentWriter(); 
      ocrEngine.Startup(rasterCodecs, documentWriter, null, LEAD_VARS.OcrLEADRuntimeDir); 
      documentConverter.SetOcrEngineInstance(ocrEngine, true); 
      documentConverter.Diagnostics.EnableTrace = true; 
 
      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 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); 
         } 
      } 
   } 
} 
 
static class LEAD_VARS 
{ 
   public const string OcrLEADRuntimeDir = @"C:\LEADTOOLS21\Bin\Common\OcrLEADRuntime"; 
} 
Imports Leadtools 
Imports Leadtools.Codecs 
Imports Leadtools.Document.Writer 
Imports Leadtools.Svg 
Imports Leadtools.Document 
Imports Leadtools.Caching 
Imports Leadtools.Annotations.Engine 
Imports Leadtools.Ocr 
Imports Leadtools.Document.Converter 
Imports LeadtoolsDocumentConverterExamples.LeadtoolsExamples.Common 
 
Public Sub DocumentConverterOptionsExample() 
   Using documentConverter As New DocumentConverter() 
      'use options to force ocr conversion (disable SVG) 
      documentConverter.Options.EnableSvgConversion = False 
      'abort job at first error (in any page) 
      documentConverter.Options.JobErrorMode = DocumentConverterJobErrorMode.Abort 
 
      Dim ocrEngine As IOcrEngine = OcrEngineManager.CreateEngine(OcrEngineType.LEAD) 
      Dim rasterCodecs As RasterCodecs = New RasterCodecs() 
      Dim documentWriter As DocumentWriter = New DocumentWriter() 
      ocrEngine.Startup(rasterCodecs, documentWriter, Nothing, LEAD_VARS.OcrLEADRuntimeDir) 
      documentConverter.SetOcrEngineInstance(ocrEngine, True) 
      documentConverter.Diagnostics.EnableTrace = True 
 
      Dim inFile As String = Path.Combine(ImagesPath.Path, "Leadtools.docx") 
      Dim outFile As String = Path.Combine(ImagesPath.Path, "output.pdf") 
      Dim format As DocumentFormat = DocumentFormat.Pdf 
      Dim jobData As DocumentConverterJobData = DocumentConverterJobs.CreateJobData(inFile, outFile, format) 
      jobData.JobName = "conversion job" 
 
      Dim job As DocumentConverterJob = documentConverter.Jobs.CreateJob(jobData) 
      documentConverter.Jobs.RunJob(job) 
 
      If job.Status = DocumentConverterJobStatus.Success Then 
         Console.WriteLine("Success") 
      Else 
         Console.WriteLine("{0} Errors", job.Status) 
         For Each errorItem As DocumentConverterJobError In job.Errors 
            Console.WriteLine("  {0} at {1}: {2}", errorItem.Operation, errorItem.InputDocumentPageNumber, errorItem.Error.Message) 
         Next 
      End If 
   End Using 
End Sub 
 
Public NotInheritable Class LEAD_VARS 
   Public Const OcrLEADRuntimeDir As String = "C:\LEADTOOLS21\Bin\Common\OcrLEADRuntime" 
End Class 
Requirements
Target Platforms
Help Version 21.0.2021.6.30
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2021 LEAD Technologies, Inc. All Rights Reserved.

Leadtools.Document.Converter Assembly

Products | Support | Contact Us | Intellectual Property Notices
© 1991-2021 LEAD Technologies, Inc. All Rights Reserved.