Grooper.Core.RegistrationZone

Registration zones are used to align Field Zones and OMR Zones prior to zonal extraction. When documents are scanned, pages shift slightly, causing alignment issues with zonal extraction. Registration zones correct this shift by aligning zones relative to other elements on the page.

Registration zones cannot have children. Registration zones can be children of Field Zones or OMR Zones.


Inherits from: Grooper.Core.FieldZone

Constructors

Signature Description
New (Owner As ExtractZone) Creates a new instance.
Parameters
Owner
          Type: ExtractZone
          The ExtractZone associated with this zone.

Fields

Field Name Field Type Description
Database As Grooper.GrooperDb Grooper.GrooperDb
Id As System.Guid System.Guid
RegistrationZones As System.Collections.Generic.Dictionary`2[[System.Guid, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089],[Grooper.Core.RegistrationZone, Grooper.Core, Version=2.80.35.0, Culture=neutral, PublicKeyToken=null]] System.Collections.Generic.Dictionary(Of TKey, TValue)

Properties

Property Name Property Type Description
Alignment Grooper.Core.RegistrationZone.RegistrationAlignment Indicates which corner of the registration value is used as the registration point. In some cases, it can be important which corner of a text element is used as the reference point. This is particularly true when regular expression syntax is used in the registration text, and the resulting registration text may have a variable length.Can be one of the following values:
  • TopLeft: Registration will be relative to the top left of the registration text.
  • TopRight: Registration will be relative to the top right of the registration text.
  • BottomLeft: Registration will be relative to the bottom left of the registration text.
  • BottomRight: Registration will be relative to the bottom right of the registration text.
  • Center: Registration will be relative to the center of the registration text.
ApplyFieldExtractor System.Boolean Controls whether the extractor for the field will be executed on the OCR results obtained from the zone.
AutoSnapDistance Grooper.IP.LogicalBorder Specifies the maximum distance for an auto snap operation, which automatically aligns the edges of the zone to lines on the document. An empty or zero value disables auto snap. If this value is set, then lines detected in the image will be used to adjust the position of the zone.
AutoSnapMargin Grooper.IP.LogicalBorder When the auto snap feature is in use, specifies an additional amount to shrink the zone on each edge.
BarcodeDetectionSettings Grooper.IP.ReadBarcodes The settings to be used for barcode recognition.
Bounds Grooper.RectangleExF The location of the zone.
ContentType Grooper.Core.ContentType Returns the ContentType on which this zone is defined.
DisplayName System.String The display name of this object.
ExtractionType Grooper.Core.FieldZone.ZonalExtractionType The type of data extraction to be used with this zone.Can be one of the following values:
  • None: No zonal extraction will be performed. This zone simply establishes the zoom area when the user tabs into the field.
  • Barcode: The zone will use barcode recognition to read a barcode value.
  • OCR: The zone will use OCR to read a text value.
  • FullText: The zone will be re-extracted from existing full text OCR, if it exists.
Field Grooper.Core.DataField Returns the Data Field object associated with this zone.
FieldProfile Grooper.Core.FieldProfile Returns the Field Profile on which this zone is defined.
HasReferenceProperties System.Boolean Returns true if the object has properties which reference Grooper Node objects.
HasRegistrationZones System.Boolean Returns true if this zone has at least one Registration Zone as a child.
IpProfile Grooper.IP.IpProfile The IP Profile to run prior to zonal extraction. This IP Profile performs temporary image cleanup prior to extraction. It does not permanently alter the image.
IsEmpty System.Boolean Returns true if all properties with a ViewableAttribute are set to their default value.
IsWriteable System.Boolean Returns true if the object is writable, or false if it is not.
LineSeparator System.String When capturing multiple lines of text, specifies how line breaks will be represented in the output. The following special escape sequences may be used:
  • \r - Carriage return
  • \n - Line feed
  • \t - Tab
  • \f - Form feed
  • \s - Space
Location Grooper.RectangleExF The location of the registration text on the sample page used for setup. This location must be set before the registration zone can be used. To set the location, test the Registration Zone and use the Save Location command.
OcrProfile Grooper.OCR.OcrProfile The OCR Profile to be used for zonal data extraction.
Owner Grooper.ConnectedObject Returns the node that owns the connected object, if any.
OwnerNode Grooper.GrooperNode Returns the node that owns the connected object, if any.
PageNo System.Int32 The page number associated with this zone. A negative value indicates on offset starting at the end of the document. For example, -1 indicates the last page of the document -2 indicates the 2nd to last page of the document, and etc.
RegistrationPattern Grooper.Core.DataPattern Defines a text value or pattern which matches a label or other text element near the data value. The registration pattern is responsible for matching an element on the page, such as a field label, which will always have the same position relative to the data value. If the registration pattern hits multiple locations, an extraction will be attempted at each of the locations, potentially producing multiple candidates for the field value.
Root Grooper.GrooperRoot Returns the root node
Scope Grooper.Core.RegistrationZone.RegistrationZoneScope The scope of the registration zone.Can be one of the following values:
  • Page: The registration zone on this page will be search for instances of the registration text.
  • Document: The entire document content will be searched for instances of the registration text. Requires full text OCR.
  • PageRegion: Aligns the field to a specific region of the page.
ShapeName System.String The name of a Shape to be used as the region for this zone.
UseAtPageLevel System.Boolean If enabled, this registration zone will be used for all zones on the page which do not have individually-defined registration zones.
ValueExtractor Grooper.Core.EmbeddedExtractor Defines an optional extractor to be executed against the content of the zone.

Methods

Method Name Description
AddRegistrationZone(Zone As CaptureZone) Adds a new RegistrationZone as a child of this zone.
Parameters
Zone
          Type: CaptureZone
          The RegistrationZone to add.
Clone() As CaptureZone Returns a clone of this object.
DeleteRegistrationZone(Id As Guid) Deletes a child RegistrationZone.
Parameters
Id
          Type: Guid
          The Id of the zone to delete.
GetLastError() As String Returns the message from a previous error.
GetProperties() As PropertyDescriptorCollection
GetReferences() As List(Of GrooperNode) Returns list of nodes referenced by this object or its children.
GetRegistrationLocations(Source As FieldContainerInstance, RegZones As IEnumerable(Of RegistrationZone)) As List(Of RegistrationLocation) Obtains a list of registration locations to be used for this zone.
Parameters
Source
          Type: FieldContainerInstance
          The source DataInstance.
 
RegZones
          Type: IEnumerable`1
          
GetRuntimePageNo(NumPages As Int32) As Int32 Generates the runtime page number for a document with N pages.
Parameters
NumPages
          Type: Int32
          The number of pages in the document.
IsPropertyEnabled(PropertyName As String) As Nullable(Of Boolean) Defines whether a property is currently enabled.
Parameters
PropertyName
          Type: String
          The name of the property to determine the enabled state for.
IsPropertyVisible(PropertyName As String) As Nullable(Of Boolean) Defines whether a property is currently visible.
Parameters
PropertyName
          Type: String
          The name of the property to determine the visible state for.
IsType(Type As Type) As Boolean Returns true if the object is of the type specified, or if it derives from the type specfied.
Parameters
Type
          Type: Type
          The type to check.
PerformDocumentRegistration(Source As ElementContainerInstance) As List(Of RegistrationZoneResult)
Parameters
Source
          Type: ElementContainerInstance
          
PerformPageRegistration(Source As ElementContainerInstance) As RegistrationZoneResult
Parameters
Source
          Type: ElementContainerInstance
          
PerformRegionRegistration(Source As ElementContainerInstance, ZoneLocation As RectangleExF) As RegistrationZoneResult
Parameters
Source
          Type: ElementContainerInstance
          
 
ZoneLocation
          Type: RectangleExF
          
PerformRegistration(Source As ElementContainerInstance, ZoneLocation As RectangleExF) As List(Of RegistrationZoneResult) Performs registration.
Parameters
Source
          Type: ElementContainerInstance
          The source DataInstance.
 
ZoneLocation
          Type: RectangleExF
          When PageRegion registration is in use, specifies the absolute region.
ProcessRegistrationZones(Source As ElementContainerInstance, Zones As IEnumerable(Of RegistrationZone), ZoneLocation As RectangleExF) As List(Of RegistrationLocation) Gets the average offset from the provided list of Registration Zones
Parameters
Source
          Type: ElementContainerInstance
          
 
Zones
          Type: IEnumerable`1
          The list of Registration Zones
 
ZoneLocation
          Type: RectangleExF
          
ReadInstance(Location As RegistrationLocation, Source As FieldContainerInstance) As ExtractZoneResult Performs extraction for this zone.
Parameters
Location
          Type: RegistrationLocation
          The registration location to use.
 
Source
          Type: FieldContainerInstance
          The source data instance.
ReadInstances(Source As FieldContainerInstance, RegZones As IEnumerable(Of RegistrationZone)) As List(Of ExtractZoneResult) Performs extraction for this zone.
Parameters
Source
          Type: FieldContainerInstance
          The source DataInstance.
 
RegZones
          Type: IEnumerable`1
          A list of shared registration zones
Serialize() As String Serializes the object.
SetDatabase(Database As GrooperDb) Sets the database connection of the object.
Parameters
Database
          Type: GrooperDb
          
SetLastError(Message As String, pa() As Object())
Parameters
Message
          Type: String
          
 
pa
          Type: Object
          
SetOwner(Owner As ConnectedObject, SkipInitialization As Boolean) Sets the owner of the connected object with another object that implements the IConnected interface.
Parameters
Owner
          Type: ConnectedObject
          
 
SkipInitialization
          Type: Boolean
          
ToString() As String Returns a string value representation of the connected object.
ValidateProperties() As ValidationErrorList Validates the properties of this object.