AutoFormsEngine Constructor(IMasterFormsRepository,IOcrEngine,BarcodeEngine,AutoFormsRecognitionManager,int,int,bool)

Summary

Initializes a new AutoFormsEngine class object.

Syntax
C#
VB
C++
  
Public Function New( _ 
   ByVal repository As IMasterFormsRepository, _ 
   ByVal ocrEngine As IOcrEngine, _ 
   ByVal barcodeEngine As BarcodeEngine, _ 
   ByVal managers As AutoFormsRecognitionManager, _ 
   ByVal minimumConfidenceKnownForm As Integer, _ 
   ByVal minimumConfidenceRecognized As Integer, _ 
   ByVal recognizeFirstPageOnly As Boolean _ 
) 

Parameters

repository
Repository of Master Forms.

ocrEngine
The Leadtools.Ocr.IOcrEngine that is used for optical character recognition and processing.

barcodeEngine
The Leadtools.Barcode.BarcodeEngine that is used for barcode recognition and processing.

managers
The Object Managers to be used to recognize forms and generate Master Forms attributes in GenerateMasterFormAttributes.

minimumConfidenceKnownForm
The minimum confidence value to decide that the Form type result is a known type. It ranges from 0 to 100 and usually it is less than minimumConfidenceRecognized.

minimumConfidenceRecognized
The minimum confidence value to decide that the Form type is recognized and no further comparison with Master Forms is needed. It ranges from 0 to 100 and usually it is greater than minimumConfidenceKnownForm.

recognizeFirstPageOnly
Recognize the form based on the first page only.

Remarks

It is the user's responsibility to dispose of this object when it is no longer needed by calling Dispose.

If ocrEngine is null, Leadtools.Forms.Recognition.Ocr.OcrObjectsManager will not be used for recognition and Leadtools.Forms.Processing.TextFormField and Leadtools.Forms.Processing.OmrFormField will not be processed.

If barcodeEngine is null, Leadtools.Forms.Recognition.Barcode.BarcodeObjectsManager will not be used for recognition and Leadtools.Forms.Processing.BarcodeFormField will not be processed.

The recognition Object Managers will be set to the managers used to generate the Master Forms in the repository.

Important: Different OCR engines might have slight differences in form alignment and recognition. Therefore, it is best to use the same Leadtools.Ocr.OcrEngineType when generating the master forms and when recognizing and processing forms.

Example
C#
VB
using Leadtools; 
using Leadtools.Codecs; 
using Leadtools.Forms.Common; 
using Leadtools.Forms.Auto; 
using Leadtools.Ocr; 
using Leadtools.Forms.Recognition; 
using Leadtools.Forms.Processing; 
using Leadtools.Barcode; 
 
public void AutoFormRunManual() 
{ 
   string root = Path.Combine(LEAD_VARS.ImagesDir, @"Forms\FormsDemo\OCR_Test"); 
   RasterCodecs codecs = new RasterCodecs(); 
   //create repository 
   DiskMasterFormsRepository repository = new DiskMasterFormsRepository(codecs, root); 
 
   using (IOcrEngine ocrEngine = OcrEngineManager.CreateEngine(OcrEngineType.LEAD, false)) 
   { 
      ocrEngine.Startup(null, null, null, LEAD_VARS.OcrLEADRuntimeDir); 
      BarcodeEngine barcodeEngine = new BarcodeEngine(); 
 
      //create AutoForm Engine 
      AutoFormsEngine autoEngine = new AutoFormsEngine(repository, ocrEngine, barcodeEngine, AutoFormsRecognitionManager.Ocr | AutoFormsRecognitionManager.Default, 30, 80, true); 
 
      //load the first page of the image 
      RasterImage form = codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, @"Forms\Images\FCC-107_OCR_Filled.tif"), 1, CodecsLoadByteOrder.Bgr, 1, -1); 
      //recognize and process the form 
      autoEngine.UseThreadPool = true; 
      autoEngine.TradeoffMode = FormsTradeoffMode.Accurate; 
      AutoFormsRunResult result = autoEngine.Run(form, null, null, null); 
      if (result == null) 
         return; 
   } 
} 
 
static class LEAD_VARS 
{ 
   public const string ImagesDir = @"C:\Users\Public\Documents\LEADTOOLS Images"; 
   public const string OcrLEADRuntimeDir = @"C:\LEADTOOLS 20\Bin\Common\OcrLEADRuntime"; 
} 
Imports Leadtools 
Imports Leadtools.Codecs 
Imports Leadtools.Forms.Common 
Imports Leadtools.Forms.Auto 
Imports Leadtools.Ocr 
Imports Leadtools.Forms.Recognition 
Imports Leadtools.Forms.Processing 
Imports Leadtools.Barcode 
 
Public Sub AutoFormRunManual() 
 
   Dim root As String = Path.Combine(LEAD_VARS.ImagesDir, "Forms\FormsDemo\OCR_Test") 
 
   Dim codecs_Renamed As RasterCodecs = New RasterCodecs() 
   'create repository 
   Dim repository As DiskMasterFormsRepository = New DiskMasterFormsRepository(codecs_Renamed, root) 
 
   Using ocrEngine As IOcrEngine = OcrEngineManager.CreateEngine(OcrEngineType.LEAD, False) 
      ocrEngine.Startup(Nothing, Nothing, Nothing, LEAD_VARS.OcrLEADRuntimeDir) 
      Dim engineBarcode As BarcodeEngine = New BarcodeEngine() 
 
      'create AutoForm Engine 
      Dim autoEngine As AutoFormsEngine = New AutoFormsEngine(repository, ocrEngine, engineBarcode, AutoFormsRecognitionManager.Ocr Or AutoFormsRecognitionManager.Default, 30, 80, True) 
 
      'load the first page of the image 
      Dim form As RasterImage = codecs_Renamed.Load(Path.Combine(LEAD_VARS.ImagesDir, "Forms\Images\FCC-107_OCR_Filled.tif"), 1, CodecsLoadByteOrder.Bgr, 1, -1) 
      'recognize and process the form 
      'autoEngine.FastRecognitionMode = False 
      Dim result As AutoFormsRunResult = autoEngine.Run(form, Nothing, Nothing, Nothing) 
      If result Is Nothing Then 
         Return 
      End If 
   End Using 
End Sub 
 
Public NotInheritable Class LEAD_VARS 
   Public Const ImagesDir As String = "C:\Users\Public\Documents\LEADTOOLS Images" 
   Public Const OcrLEADRuntimeDir As String = "C:\LEADTOOLS 20\Bin\Common\OcrLEADRuntime" 
End Class 

Requirements

Target Platforms

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

Leadtools.Forms.Auto Assembly