Zum Hauptinhalt springen
Dies ist die Schnittstelle für ein externes Wörterbuch. Diese Schnittstelle und alle ihre Methoden werden clientseitig implementiert. Da sie von der IUnknown-Schnittstelle abgeleitet ist, sollte das Client-Objekt ebenfalls die IUnknown-Methoden implementieren. ABBYY FineReader Engine-Objekte ermöglichen das Arbeiten mit den folgenden Wörterbuchtypen: Standard-, Benutzer- und auf regulären Ausdrücken basierende Wörterbücher. Falls diese Wörterbuchtypen für Ihren Anwendungsfall nicht geeignet sind, können Sie mit der IExternalDictionary-Schnittstelle einen eigenen Wörterbuchtyp implementieren. Sie können Ihr Wörterbuch mithilfe der Methode SetDictionary des Objekts ExternalDictionaryDescription zuweisen. Weitere Informationen finden Sie im Abschnitt Arbeiten mit Wörterbüchern.

Richtlinien für die Erstellung eines externen Wörterbuchs

ABBYY FineReader Engine erkennt ein Wort in einem Text und übergibt es anschließend zusammen mit den Erkennungsvarianten jedes Zeichens im Wort an ein externes Wörterbuch. Das Wörterbuch muss aus allen verfügbaren Kombinationen diejenigen auswählen, die im Wörterbuch enthalten sind, und sie über die Callback-Schnittstelle IExternalDictionaryCallback zurückgeben. Beachten Sie, dass die Erkennungsvarianten jedes Zeichens alle Varianten umfassen, die ABBYY FineReader Engine an jeder Position im Wort erwartet:
  • Groß- und Kleinschreibung:
    • Wenn die von ABBYY FineReader Engine für ein Zeichen bereitgestellten Varianten sowohl einen Groß- als auch einen Kleinbuchstaben enthalten, muss das Wörterbuch das Wort mit Großbuchstaben und das Wort mit Kleinbuchstaben prüfen und beide Varianten zurückgeben, sofern sie gefunden werden.
    • Wenn die Varianten für ein Zeichen nur einen Kleinbuchstaben enthalten, darf das Wörterbuch nur das Wort mit Kleinbuchstaben zurückgeben.
    • Wenn die Varianten für ein Zeichen nur einen Kleinbuchstaben enthalten, das Wörterbuch aber nur das Wort mit Großbuchstaben enthält, kann das Wörterbuch diese Kombination nach eigenem Ermessen bestätigen oder nicht.
    • Im Allgemeinen kann ein Wort die folgenden Schreibvarianten haben: alle Buchstaben im Wort sind klein, der erste Buchstabe ist groß und die übrigen sind klein, oder alle Buchstaben sind groß. Daher empfehlen wir, dass Ihr Wörterbuch für gewöhnliche Wörter nur diese Varianten enthält.
  • Diakritische Zeichen:
    • Wenn die Sprache sowohl Varianten mit als auch ohne diakritische Zeichen zulässt, muss das Wörterbuch beide Varianten bestätigen können.
    • Wenn die Sprache nur eine Schreibvariante zulässt, darf das Wörterbuch nur diese Variante bestätigen.
  • Zeichensatz:
    • Die an das Wörterbuch übergebenen Varianten der Zeichenerkennung enthalten nur Zeichen, die ABBYY FineReader Engine in der Sprache als zulässig eingestuft hat. Wenn ein Zeichen für das Wörterbuch „unbekannt“ ist, kann das Wörterbuch dieses Zeichen durch ein beliebiges anderes Zeichen ersetzen. Wörter mit Zeichen, die im Alphabet der Sprache nicht zulässig sind, werden von ABBYY FineReader Engine ignoriert.
  • Bindestriche:
    • ABBYY FineReader Engine entfernt Bindestriche, bevor die Wörter an das Wörterbuch übergeben werden. Wenn daher in den übergebenen Varianten ein Bindestrich erscheint, ist dies das Wort mit Bindestrich, das ABBYY FineReader Engine prüfen möchte.
    • ABBYY FineReader Engine übergibt das gesamte Wort an das Wörterbuch. Wenn ein Wort ohne Bindestrich in die nächste Zeile umbrochen wurde, versucht ABBYY FineReader, die beiden Teile zu verbinden, und prüft dann das Ergebnis dieser Verbindung im Wörterbuch.
  • Gewichtungen:
    • Die Standardgewichtung für ein Wort beträgt 100.

Methoden

NameBeschreibung
CheckPrefixBestimmt, ob das Wörterbuch ein Wort mit dem angegebenen Präfix enthält.
CheckWordsÜbermittelt dem Erkennungsmodul mithilfe der Methode ExternalDictionaryResult des Objekts ExternalDictionaryCallback Informationen über Zeichenfolgen in der Sammlung, die Wörterbuchwörter enthält.

Eingabeparameter

Das Objekt ExternalDictionary dient als Eingabeparameter der Methode IExternalDictionaryDescription::SetDictionary.

Hinweise

Unter Linux funktioniert diese Schnittstelle nicht, wenn das Engine-Objekt als Out-of-Process-Server geladen wird.

Siehe auch

IExternalDictionaryCallback ExternalDictionaryDescription Arbeiten mit Wörterbüchern