Create and Initialize the Form Recognition Engine using the Forms Recognition Engine.
FormRecognitionEngine RecognitionEngine = new FormRecognitionEngine();
Create and add the desired Object managers using the RecognitionObjectsManager.
RasterCodecs.Startup();
RasterCodecs FormsCodec = new RasterCodecs();
DocumentWriter docWriter = null;
string ocrInstallationDirectory = ""; //use default installation
IOcrEngine FormsOcrEngine;
FormsOcrEngine = OcrEngineManager.CreateEngine(OcrEngineType.Advantage, false);
FormsOcrEngine.Startup(FormsCodec, docWriter, System.IO.Path.GetTempPath(), ocrInstallationDirectory);
OcrObjectsManager ocrObjectManager = new OcrObjectsManager(FormsOcrEngine);
RecognitionEngine.ObjectsManagers.Add(ocrObjectManager);
Create the Master Form (or several) attributes using the CreateMasterForm.
FormRecognitionAttributes attributes;
attributes = RecognitionEngine.CreateMasterForm(name, Guid.Empty, null);
Add pages to the Master Form using the AddMasterFormPage Method.
for(int i = 1; i<= image.PageCount; i++)
{
image.Page = i;
AddPageToMasterForm(image, attributes);
}
Close the Master Form using the CloseMasterForm Method.
RecognitionEngine.CloseMasterForm(attributes);
Create the Form Processing Engine using the Class.
FormProcessingEngine ProcessingEngine = new FormProcessingEngine();
Initialize the Form Processing Engine with the OCR engine, Barcode engine, or both engines.
IOcrEngine FormsOcrEngine;
FormsOcrEngine = OcrEngineManager.CreateEngine(OcrEngineType.Advantage, false);
FormsOcrEngine.Startup(null, null, null, @"C:\LEADTOOLS 19\Bin\Common\OcrAdvantageRuntime");
ProcessingEngine.OcrEngine = FormsOcrEngine;
BarcodeEngine FormsBarcodeEngine = new BarcodeEngine();
ProcessingEngine.BarcodeEngine = FormsBarcodeEngine;
Create the Form Fields list.
List<FormField> fields;
Add your form fields to the lists.
TextFormField text = new TextFormField();
text.Name = name;
text.Bounds = new LogicalRectangle(100, 500, 50, 75, LogicalUnit.Pixel);
fields.Add(text);
OmrFormField omr = new OmrFormField();
omr.Name = name;
omr.Bounds = new LogicalRectangle(200, 300, 25, 25, LogicalUnit.Pixel);
fields.Add(omr);
ImageFormField image = new ImageFormField();
image.Name = name;
image.Bounds = new LogicalRectangle(100, 1000, 300, 50, LogicalUnit.Pixel); ;
fields.Add(image);
BarcodeFormField barcode = new BarcodeFormField();
barcode.Name = name;
barcode.Bounds = new LogicalRectangle(700, 100, 300, 100, LogicalUnit.Pixel);
fields.Add(barcode);
Create a page and add the fields to it.
FormPage page = new FormPage(image.Page, image.XResolution, image.YResolution);
page.AddRange(fields);
Add pages to the processing engine.
ProcessingEngine.Pages.Add(formPage);
Create a Repository using the Leadtools.Forms.Auto.DiskMasterFormsRepository Class.
DiskMasterFormsRepository repository;
repository = new DiskMasterFormsRepository(codecs, @"C:\Forms\FormsDemo\OCR_Test");
Save the Master Form to the repository at the root category.
repository.RootCategory.AddMasterForm(attributes, ProcessingEngine.Pages, image);
Forms Recognition and Processing FAQ
Forms Recognition and Processing Workflow
Raster .NET | C API | C++ Class Library | JavaScript HTML5
Document .NET | C API | C++ Class Library | JavaScript HTML5
Medical .NET | C API | C++ Class Library | JavaScript HTML5
Medical Web Viewer .NET