User Guide > How to Work with... > OCR > How to... > Improve Accuracy with Checking > Spell Checking |
Spell checking uses third-party language-specific spell checkers. There are two kinds of spell checkers:
The recognition engine is delivered with seventeen different Language dictionaries (English, German, Dutch, Polish, Russian, etc.). These are generic language dictionaries, which contain between 100,000 and 200,000 entries.
Vertical dictionaries apply to special professions and in the toolkit. They can be treated as extensions to the Language dictionaries, though they can even be used when no Language dictionary is specified. The recognition engine is delivered with 8 different Vertical dictionaries for two professions (medical and legal) in four languages (English, German, French, and Dutch).
Specifying the Spelling language (Language dictionary) and/or a Vertical dictionary is page-level setting. Once a Language dictionary has been specified, the language checking will be applied to all zones on the page, unless their LANGDICT_PROHIBIT flag is set.
Similarly, once a Vertical dictionary has been specified, the vertical language checking will be applied to all zones on the page, unless their VERTDICT_PROHIBIT flag is set.
![]() |
Asian Recognition Module: The checking subsystem is not available. This means spell checking, UD-Checking and User-Written Checking cannot be used when the Asian Recognition Module is active. See the Asian Recognition Module topic for more details. |
This topic provides information about the following:
The most important property in controlling the checking subsystem is the ImGearRecRecognitionSettings.SpellingEnabled Property. This property is used to enable or disable the running of the checking subsystem.
If it is enabled (default), the correction of non-compliant words can be enabled or disabled. For this, the CorrectionEnabled Property and SpellingLanguage Property are used. If correction is disabled, non-compliant and suspicious words are flagged, but no auto-correction is done. When enabled, all these unchanged words are flagged, while some characters may be changed and are marked as changed. Correction is the default, so the application needs to call this property only when it wants to explicitly disable the word correction feature.
The remaining checking-related properties are specific to the particular checking system.
The spelling languages available in the current recognition engine configuration can be accessed via the ImGearRecRecognitionSettings.SpellingLanguages Property. The application can specify a language setting as the spelling language, valid for the next page or pages with the SpellingLanguage Property.
Additionally, vertical language checking can also be activated when one of the Vertical dictionaries (e.g., LEGAL_GER.DMD) has been set through the VerticalDictionary Property.
When the specified spelling language is set to AUTO (default), the language checking will be performed based on the recognition language selection (LanguageEnabled Property) as follows:
C# |
Copy Code |
---|---|
igRecognition.Recognition.SpellingEnabled = true; igRecognition.Recognition.CorrectionEnabled = true; igRecognition.Recognition.SpellingLanguage = ImGearRecLanguage.ENG; |
VB.NET |
Copy Code |
---|---|
igRecognition.Recognition.SpellingEnabled = True igRecognition.Recognition.CorrectionEnabled = True igRecognition.Recognition.SpellingLanguage = ImGearRecLanguage.ENG |
When the spelling language is set to NO, or when it specifies a language for which there is no language dictionary, the language checking will not be activated for the zones of the page.
C# |
Copy Code |
---|---|
igRecognition.Recognition.LanguageEnabled[ImGearRecLanguage.DUT] = true; igRecognition.Recognition.SpellingLanguage = ImGearRecLanguage.DUT; igRecognition.Recognition.VerticalDictionary = "Dutch Legal Dictionary"; |
VB .NET |
Copy Code |
---|---|
igRecognition.Recognition.LanguageEnabled(ImGearRecLanguage.DUT) = True igRecognition.Recognition.SpellingLanguage = ImGearRecLanguage.DUT igRecognition.Recognition.VerticalDictionary = "Dutch Legal Dictionary" |