←Select platform

DocumentWriterInstance Property

Summary
Gets the DocumentWriter instance being used in the current operation.
Syntax
C#
Objective-C
C++/CLI
Java
Python
public DocumentWriter DocumentWriterInstance { get; } 
@property (nonatomic, strong, readonly, nullable) LTDocumentWriter *documentWriterInstance; 
public DocumentWriter getDocumentWriterInstance() 
public: 
property DocumentWriter^ DocumentWriterInstance { 
   DocumentWriter^ get(); 
} 
DocumentWriterInstance # get  (OcrAutoRecognizeJobOperationEventArgs) 

Property Value

The DocumentWriter instance being used in the current operation.

Remarks

This member will be equal to IOcrDocument.DocumentWriterInstance in all operations where an Document is avaliable. When the operation is ConvertDocument, this instance will point to the DocumentWriter object being used to convert the document.

Example
C#
Java
using Leadtools; 
using Leadtools.Codecs; 
using Leadtools.Ocr; 
using Leadtools.Document.Writer; 
using Leadtools.Forms.Common; 
using Leadtools.WinForms; 
 
public void JobOperationExample() 
{ 
   string imageFileName = Path.Combine(LEAD_VARS.ImagesDir, "Ocr1.tif"); 
   string documentFileName = Path.Combine(LEAD_VARS.ImagesDir, "JobOperation.pdf"); 
 
   using (IOcrEngine ocrEngine = OcrEngineManager.CreateEngine(OcrEngineType.LEAD)) 
   { 
      ocrEngine.Startup(null, null, null, LEAD_VARS.OcrLEADRuntimeDir); 
 
      IOcrAutoRecognizeManager autoRecognizeManager = ocrEngine.AutoRecognizeManager; 
      autoRecognizeManager.JobOperation += new EventHandler<OcrAutoRecognizeJobOperationEventArgs>(autoRecognizeManager_JobOperation); 
 
      IOcrAutoRecognizeJob job = autoRecognizeManager.CreateJob(new OcrAutoRecognizeJobData(imageFileName, DocumentFormat.Pdf, documentFileName)); 
      autoRecognizeManager.RunJob(job); 
 
      autoRecognizeManager.JobOperation -= new EventHandler<OcrAutoRecognizeJobOperationEventArgs>(autoRecognizeManager_JobOperation); 
   } 
} 
 
private static void autoRecognizeManager_JobOperation(object sender, OcrAutoRecognizeJobOperationEventArgs e) 
{ 
   // We did not pass a zone to the job, so the engine will attempt to do AutoZone unless we 
   // add any zone to the input document. 
   // We can also check for e.PostOperation equals to true and manipulate the zones 
   // found the engine at this point 
 
   // Add a graphics zone. 
   // If you comment out this code, the result PDF will contain text, but since we will be adding a zone here, 
   // the engine will not auto-zone the document for us. Also, since the zone we are adding is 
   // graphics that takes up the whole page, the result PDF will contain a raster image and no text. 
   if (!e.PostOperation && e.ImagePageNumber == 1) 
   { 
      OcrZone ocrZone = new OcrZone(); 
      ocrZone.ZoneType = OcrZoneType.Graphic; 
      ocrZone.Bounds = new LeadRect(0, 0, e.Page.Width, e.Page.Height); 
      e.Page.Zones.Add(ocrZone); 
   } 
} 
 
static class LEAD_VARS 
{ 
   public const string ImagesDir = @"C:\LEADTOOLS23\Resources\Images"; 
   public const string OcrLEADRuntimeDir = @"C:\LEADTOOLS23\Bin\Common\OcrLEADRuntime"; 
} 
 
import java.io.File; 
import java.io.FileNotFoundException; 
import java.io.FileWriter; 
import java.io.FilenameFilter; 
import java.io.IOException; 
import java.nio.file.Files; 
import java.nio.file.Path; 
import java.nio.file.Paths; 
import java.util.ArrayList; 
import java.util.concurrent.ExecutorService; 
import java.util.concurrent.Executors; 
import java.util.concurrent.atomic.AtomicInteger; 
 
import org.junit.*; 
import org.junit.runner.JUnitCore; 
import org.junit.runner.Result; 
import org.junit.runner.notification.Failure; 
 
import static org.junit.Assert.*; 
 
import leadtools.*; 
import leadtools.document.writer.*; 
import leadtools.internal.AutoResetEvent; 
import leadtools.ocr.*; 
 
 
public void OcrAutoRecognizeManagerJobOperationExample() { 
   String LEAD_VARS_ImagesDir = "C:\\LEADTOOLS23\\Resources\\Images"; 
   String LEAD_VARS_OcrLEADRuntimeDir = "C:\\LEADTOOLS23\\Bin\\Common\\OcrLEADRuntime"; 
   String imageFileName = combine(LEAD_VARS_ImagesDir, "Ocr1.tif"); 
   String documentFileName = combine(LEAD_VARS_ImagesDir, "JobOperation.pdf"); 
 
   OcrEngine ocrEngine = OcrEngineManager.createEngine(OcrEngineType.LEAD); 
   ocrEngine.startup(null, null, null, LEAD_VARS_OcrLEADRuntimeDir); 
 
   OcrAutoRecognizeManager autoRecognizeManager = ocrEngine.getAutoRecognizeManager(); 
   autoRecognizeManager.addJobOperationListener(autoRecognizeManager_JobOperation); 
 
   OcrAutoRecognizeJob job = autoRecognizeManager 
         .createJob(new OcrAutoRecognizeJobData(imageFileName, DocumentFormat.PDF, documentFileName)); 
   autoRecognizeManager.runJob(job); 
 
   autoRecognizeManager.removeJobOperationListener(autoRecognizeManager_JobOperation); 
   ocrEngine.dispose(); 
} 
 
OcrAutoRecognizeJobOperationListener autoRecognizeManager_JobOperation=new OcrAutoRecognizeJobOperationListener(){ 
 
   @Override public void onOperation(OcrAutoRecognizeJobOperationEvent e){ 
      // We did not pass a zone to the job, so the engine will attempt to do AutoZone 
      // unless we 
      // add any zone to the input document. 
      // We can also check for e.PostOperation equals to true and manipulate the zones 
      // found the engine at this point 
 
      // Add a graphics zone. 
      // If you comment out this code, the result PDF will contain text, but since we 
      // will be adding a zone here, 
      // the engine will not auto-zone the document for us. Also, since the zone we 
      // are adding is 
      // graphics that takes up the whole page, the result PDF will contain a raster 
      // image and no text. 
      if (!e.isPostOperation()&&e.getImagePageNumber()==1) { 
         OcrZone ocrZone=new OcrZone(); 
         ocrZone.setZoneType(OcrZoneType.GRAPHIC); 
         ocrZone.setBounds(new LeadRect(0,0,e.getPage().getWidth(),e.getPage().getHeight()));e.getPage().getZones().add(ocrZone); 
      } 
   } 
 
}; 
Requirements

Target Platforms

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

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