- Text (gekennzeichnet durch das Symbol
) wird zum Extrahieren von Textdaten verwendet
Durch das Erweitern der Regionen von Textblöcken kann die Erkennungsqualität verbessert werden. Um eine Region zu erweitern, doppelklicken Sie auf das Element Block, um das Dialogfeld „Eigenschaften“ zu öffnen, und geben Sie die vertikalen und horizontalen Werte für die Eigenschaft Block result region inflate an. - Barcode (gekennzeichnet durch das Symbol
) wird zum Lesen von Barcodes verwendet - Checkmark (gekennzeichnet durch das Symbol
) wird zum Erkennen von Häkchen verwendet - Picture (gekennzeichnet durch das Symbol
) wird zur Verarbeitung von Objekten verwendet, die bei der Vorerkennung nicht als Text identifiziert wurden - Table (gekennzeichnet durch das Symbol
) wird zum Extrahieren von Daten aus Tabellen verwendet - Group (gekennzeichnet durch das Symbol
) wird zum logischen Gruppieren von Blöcken verwendet - Häkchengruppe (gekennzeichnet durch das Symbol
) wird zum Erstellen von Häkchengruppen verwendet. Zu diesem Gruppentyp können nur Häkchenblöcke hinzugefügt werden – Blöcke anderer Typen können hier weder erstellt noch hineingezogen werden. - wiederholbare Gruppe (gekennzeichnet durch das Symbol
) wird zum Erstellen einer wiederholbaren Gruppe von Blöcken verwendet - Non-Recognized (gekennzeichnet durch das Symbol
) wird verwendet, um einen Bereich von der Erkennung auszuschließen
Daten aus den Blöcken werden in einer Datenerfassungsanwendung wie ABBYY FlexiCapture extrahiert.
Block-Eigenschaften
- Name - der Name des Blocks. Der Name eines Blocks kann Buchstaben (lateinische Buchstaben, lateinische Buchstaben mit diakritischen Zeichen, kyrillische Buchstaben), Ziffern und Unterstriche enthalten. Der Name eines Blocks muss mit einem Buchstaben oder einem Unterstrich beginnen. Blocknamen dürfen keine Leerzeichen oder Sonderzeichen enthalten.
- Type - der Typ des Blocks (wird beim Erstellen ausgewählt). Der Typ des Blocks muss dem Typ des Objekts bzw. der Objekte entsprechen, die sich in dem vom Block umschlossenen Bereich befinden.
- Comment - ein vom Benutzer eingegebener Kommentar (optional).
- Has repeating instances - zeigt an, dass der Block aus mehreren Instanzen besteht. Wählen Sie diese Eigenschaft aus, wenn beispielsweise alle Instanzen eines wiederholbare GruppeElements als Blockregion verwendet werden sollen.
- Instance sort order - legt die Reihenfolge fest, in der Gruppeninstanzen zu einem Block zusammengeführt werden. Diese Eigenschaft ist nur verfügbar, wenn Has repeating instances ausgewählt ist. Mögliche Werte:
- Top to bottom - die Instanzen werden entsprechend ihrer Position im Bild von oben nach unten zu einem Block zusammengeführt
- Left to right - die Instanzen werden entsprechend ihrer Position im Bild von links nach rechts zu einem Block zusammengeführt
- Right to left - die Instanzen werden entsprechend ihrer Position im Bild von rechts nach links zu einem Block zusammengeführt
- In order of finding - die Instanzen werden in der Reihenfolge zu einem Block zusammengeführt, in der Hypothesen erzeugt werden. Hypothesen werden in absteigender Quality erzeugt. Wenn der Benutzer zusätzliche Bedingungen für Instanzen angegeben hat, werden Hypothesen in der benutzerdefinierten Reihenfolge erzeugt. Wenn Sie also eine andere als die vom Programm standardmäßig verwendete Reihenfolge benötigen, können Sie die gewünschte Reihenfolge mithilfe zusätzlicher Bedingungen festlegen.
- For Layout wählt die Layout-Alternative aus, in der der Suchbereich angegeben wird.
- Source element - gibt einen Bereich im Bild an, der mit der Region des Elements identisch ist, das verwendet wird, um den Block im Bild zu finden. Wenn das FlexiLayout auf das Bild angewendet wird, sucht das Programm nach dem bzw. den durch das Element beschriebenen Objekten. Aus diesen Objekten werden die Daten extrahiert. Bei einer wiederholbaren Gruppe können Sie entweder eine der Instanzen auswählen oder alle Instanzen verwenden (AllInstances). Einzelheiten finden Sie unter Using instances of a Repeating Group as reference, excluded or source elements.
- Expression - legt einen Bereich im Bild fest, der mit keiner der Elementregionen übereinstimmt. Sie können beispielsweise die Regionen einiger Elemente und den Raum zwischen ihnen zu einem Block zusammenführen, die Region eines Elements um einen bestimmten Wert erweitern oder die Koordinaten des Blocks angeben, ohne sich auf Elemente zu beziehen. In diesem Fall kann die Region des Blocks in der FlexiLayout-Sprache beschrieben werden.
Die Region eines Blocks ist zusammenhängend. Das bedeutet: Wenn Sie eine Region aus getrennt voneinander liegenden Rechtecken erstellen, werden die Zwischenräume mit schmalen zusätzlichen Rechtecken gefüllt, damit die Region zusammenhängend ist.
Festlegen einer Blockregion mithilfe von Instanzen einer wiederholbaren Gruppe
- bei Blöcken, die keine Tabellenblöcke sind, entsprechen die angegebenen Instanzen den Instanzen des jeweiligen Felds
- bei einem Tabellenblock werden die angegebenen Instanzen als eine Instanz des Felds behandelt, d. h. ABBYY FlexiCapture verarbeitet einen solchen Block als Feld vom Typ Table mit einer nicht zusammenhängenden Region.
Regeln zum Erstellen von Verweisen auf Elemente für wiederholbare Gruppen von Blöcken
Wenn Verweise über das Source element erstellt werden, erfolgt die Prüfung beim Erstellen des FlexiLayout. Wenn Verweise mit Advanced code erstellt werden, wird ein Fehler beim Matching des FlexiLayout erkannt.
Verwenden der FlexiLayout-Sprache zum Beschreiben der Position eines Blocks
| Abrufen und Erweitern der Region eines Elements um 3 mm in der Breite und 5 mm in der Länge | OutputRegion = SomeElement.Rect; OutputRegion.Inflate( 3mm, 5mm ); |
|---|---|
| Zusammenführen der Regionsrechtecke von zwei Elementen und Abrufen des Rechtecks, das die zusammengeführten Rechtecke umschließt | Rect outputRect; outputRect = Element1.Rect Or Element2.Rect; OutputRegion = outputRect; |
| Zusammenführen der Rechtecke, die die Regionen von zwei Elementen umschließen, zu einer Region | RectArray outputRects; outputRects = RectArray( Element1.Rect ); outputRects.Add: Element2.Rect; OutputRegion = Region( outputRects ); |
| Zusammenführen der Regionen der Objekte, die zwei verschiedenen Elementen entsprechen, zu einer Region | RectArray outputRects; outputRects = Element1.Rects; outputRects.Add( Element2.Rects ); OutputRegion = outputRects.Region; |
| Zusammenführen der Regionen der Objekte, die zur Region von Element1 gehören, und Entfernen der Regionen der Objekte, die zur Region von Element2 gehören | OutputRegion = FormRegion( Element1.Rects, Element2.Rects ); |
| Verwenden eines Table-Elements zum Angeben eines Table-Blocks | OutputTable = SearchElements.TableElement; |
| Verwenden von Hypotheseninstanzen eines bestimmten Elements zum Angeben eines Table-Blocks | OutputInstances = SearchElements.RepeatingGroup.AllInstances.TemplateElement; |
Verwenden der Variable IsNull
Verwenden der Variable IsNull
- Um das Programm anzuweisen, die Region des Blocks als gefunden zu betrachten, wenn die Breite der Region des Quellelements 50 dots überschreitet, geben Sie den folgenden Code in das Feld Region Expression ein: if Element1.Width < 50dt then IsNull = true;
- Um das Programm anzuweisen, die Region des Blocks von Element1 als gefunden zu betrachten, geben Sie den folgenden Code in das Feld Region Expression ein: IsNull = Element1.IsNull
- Angenommen, Sie müssen Element1 und Element2 verwenden, um nach einem Block zu suchen. Wenn mindestens eines der Elemente nicht gefunden wurde, gilt der Block als nicht gefunden. Rect outputRect; Let FieldLeft = Element1.Rect.Left; Let FieldRight = Element2.Rect.Right; Let FieldTop = Element1.Rect.Top; Let FieldBottom = Element2.Rect.Bottom; outputRect = Rect( FieldLeft, FieldTop, FieldRight, FieldBottom); if ((Element1.IsNull == True) or (Element2.IsNull == True) ) then {IsNull = true;} OutputRegion = outputRect;
