public IOcrPage Page { get; }
@property (nonatomic, strong, readonly, nullable) LTOcrPage *page;
public OcrPage getPage()
Page # get (OcrAutoRecognizeJobOperationEventArgs)
an IOcrPage instance that specifies the OCR page being used in the current operation. Or a null reference (Nothing in VB) if no page is being used.
This member is not valid and will be null (Nothing in VB) when the current operation is CreateDocument, PrepareDocument, SaveDocument or ConvertDocument.
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);
}
}
};
OcrAutoRecognizeJobOperationEventArgs Class
Help Collections
Raster .NET | C API | C++ Class Library | HTML5 JavaScript
Document .NET | C API | C++ Class Library | HTML5 JavaScript
Medical .NET | C API | C++ Class Library | HTML5 JavaScript
Medical Web Viewer .NET
Multimedia
Direct Show .NET | C API | Filters
Media Foundation .NET | C API | Transforms
Supported Platforms
.NET, Java, Android, and iOS/macOS Assemblies
Imaging, Medical, and Document
C API/C++ Class Libraries
Imaging, Medical, and Document
HTML5 JavaScript Libraries
Imaging, Medical, and Document