The AddMasterForm(FormRecognitionAttributes,FormPages,Uri) Method is available as an add-on to the LEADTOOLS Document and Medical Imaging toolkits.
- attributes
- Master Form recognition attributes.
- fields
- Master Form processing fields.
- url
- A System.Uri containing the name of the Master Form image data.
Visual Basic (Declaration) | |
---|---|
Overloads Public Overridable Function AddMasterForm( _ ByVal attributes As FormRecognitionAttributes, _ ByVal fields As FormPages, _ ByVal url As Uri _ ) As IMasterForm |
Visual Basic (Usage) | Copy Code |
---|---|
Dim instance As DiskMasterFormsCategory Dim attributes As FormRecognitionAttributes Dim fields As FormPages Dim url As Uri Dim value As IMasterForm value = instance.AddMasterForm(attributes, fields, url) |
C# | |
---|---|
public virtual IMasterForm AddMasterForm( FormRecognitionAttributes attributes, FormPages fields, Uri url ) |
C++/CLI | |
---|---|
public: virtual IMasterForm^ AddMasterForm( FormRecognitionAttributes^ attributes, FormPages^ fields, Uri^ url ) |
Parameters
- attributes
- Master Form recognition attributes.
- fields
- Master Form processing fields.
- url
- A System.Uri containing the name of the Master Form image data.
Return Value
Returns the created IMasterForm object.Visual Basic | Copy Code |
---|---|
Public Sub MasterFormGeneratioAndUpdateUri() 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.Plus, False) ocrEngine.Startup(Nothing, Nothing, Nothing, Nothing) Dim engineBarcode As BarcodeEngine = New BarcodeEngine() 'create AutoForm Engine Dim autoEngine As AutoFormsEngine = New AutoFormsEngine(repository, ocrEngine, engineBarcode, AutoFormsRecognitionManager.Ocr Or AutoFormsRecognitionManager.Default) repository.Refresh() UpdateMastersUri(repository.RootCategory, autoEngine) End Using End Sub Private Sub UpdateMastersUri(ByVal category As IMasterFormsCategory, ByVal autoEngine As AutoFormsEngine) For Each master As IMasterForm In category.MasterForms Dim form As RasterImage = master.ReadForm() Dim attributes As FormRecognitionAttributes = autoEngine.GenerateMasterFormAttributes(form, "New" & master.Name, Guid.Empty, Nothing, Nothing) Dim diskMaster As DiskMasterForm = TryCast(master, DiskMasterForm) Dim url As Uri = New Uri(diskMaster.Path & ".tif") category.AddMasterForm(attributes, master.ReadFields(), url) Next master For Each childCategory As IMasterFormsCategory In category.ChildCategories UpdateMastersUri(childCategory, autoEngine) Next childCategory End Sub Public NotInheritable Class LEAD_VARS Public Const ImagesDir As String = "C:\Users\Public\Documents\LEADTOOLS Images" End Class |
C# | Copy Code |
---|---|
public void MasterFormGeneratioAndUpdateUri() { 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.Plus, false)) { ocrEngine.Startup(null, null, null, null); BarcodeEngine barcodeEngine = new BarcodeEngine(); //create AutoForm Engine AutoFormsEngine autoEngine = new AutoFormsEngine(repository, ocrEngine, barcodeEngine, AutoFormsRecognitionManager.Ocr | AutoFormsRecognitionManager.Default); repository.Refresh(); UpdateMastersUri(repository.RootCategory, autoEngine); } } public void UpdateMastersUri(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); DiskMasterForm diskMaster = master as DiskMasterForm; Uri url = new Uri(diskMaster.Path + ".tif"); category.AddMasterForm(attributes, master.ReadFields(), url); } foreach(IMasterFormsCategory childCategory in category.ChildCategories) { UpdateMastersUri(childCategory, autoEngine); } } static class LEAD_VARS { public const string ImagesDir = @"C:\Users\Public\Documents\LEADTOOLS Images"; } |
The source code of this interface implementation class is available at <Install Directory>\Examples\DotNet\CS\AutoMasterFormsRepository.
The attributes must be provided, if it is null the method will throw an exception.
The added Master Form will have the Leadtools.Forms.Recognition.FormRecognitionProperties.Name of the attributes.
The Master Form files will be stored in Path.
The Master Form attributes file will have the name of the Master Form DiskMasterForm.Name with ".bin" extension. The Master Form fields file will have the name of the Master Form DiskMasterForm.Name with ".xml" extension. The Master Form image url file will have the name of the Master Form DiskMasterForm.Name with ".tif" extension.
The form is stored as a 1-bit black and white tif image.
Target Platforms: Microsoft .NET Framework 2.0, Windows 2000, Windows XP, Windows Server 2003 family, Windows Server 2008 family, Windows Vista, Windows 7