←Select platform

GenerateMasterFormAttributes Method

Summary
Generate master Form attributes based on the Object Managers set when this AutoFormsEngine object is constructed.

Syntax
C#
C++/CLI
Java
Python
public FormRecognitionAttributes generateMasterFormAttributes( 
   RasterImage,  
   java.lang.String,  
   java.util.UUID,  
   FormRecognitionOptions,  
   java.util.List<PageRecognitionOptions> 
); 
public: 
FormRecognitionAttributes^ GenerateMasterFormAttributes(  
   RasterImage^ image, 
   String^ name, 
   Guid id, 
   FormRecognitionOptions^ formOptions, 
   List<PageRecognitionOptions^>^ pagesOptions 
)  
def GenerateMasterFormAttributes(self,image,name,id,formOptions,pagesOptions): 

Parameters

image
Master form image, it must have all master form page images.

name
The Master Form name.

id
The Master Form ID.

formOptions
Specifies the options for the Master Form.

pagesOptions
List of Leadtools.Forms.Recognition.PageRecognitionOptions for all form pages.

Return Value

Returns the Master Forms attributes if the set Object Managers are able to extract its features, otherwise it returns null.

Remarks

This method is used to create form attributes to the Master Forms (unfilled form). The attributes that are generated using this method cannot be used as a Form attributes.

It returns null if the Object Managers that are set in the constructor are not suitable for this form, i.e. the Master Form does not have any features of the set Object Managers. Try using another Object Manager in order to detect the Master Form features.

Example
C#
using Leadtools; 
using Leadtools.Codecs; 
using Leadtools.Forms.Common; 
using Leadtools.Forms.Auto; 
using Leadtools.Document; 
using Leadtools.Ocr; 
using Leadtools.Forms.Recognition; 
using Leadtools.Forms.Processing; 
using Leadtools.Barcode; 
 
 
public void MasterFormGeneratioAndUpdate() 
{ 
   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)) 
   { 
      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); 
 
      repository.Refresh(); 
 
      UpdateMasters(repository.RootCategory, autoEngine); 
   } 
} 
 
public void UpdateMasters(IMasterFormsCategory category, AutoFormsEngine autoEngine) 
{ 
   foreach (IMasterForm master in category.MasterForms) 
   { 
      RasterImage form = master.ReadForm(); 
      FormRecognitionAttributes attributes = autoEngine.GenerateMasterFormAttributes(form, "New" + master.Name, Guid.Empty, null, null); 
      category.DeleteMasterForm(master); 
      category.AddMasterForm(attributes, master.ReadFields(), form); 
   } 
 
   foreach (IMasterFormsCategory childCategory in category.ChildCategories) 
   { 
      UpdateMasters(childCategory, autoEngine); 
   } 
} 
 
static class LEAD_VARS 
{ 
   public const string ImagesDir = @"C:\LEADTOOLS22\Resources\Images"; 
   public const string OcrLEADRuntimeDir = @"C:\LEADTOOLS22\Bin\Common\OcrLEADRuntime"; 
} 
Requirements

Target Platforms

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

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