←Select platform

IOcrSpellCheckManager Interface

Summary
Manages the spell checking sub system of the OCR engine.
Syntax
C#
Objective-C
C++/CLI
Java
Python
public interface IOcrSpellCheckManager 
@interface LTOcrSpellCheckManager : NSObject 
public class OcrSpellCheckManager 
public interface class IOcrSpellCheckManager 
class IOcrSpellCheckManager: 
Remarks

Access the IOcrSpellCheckManager being used by an IOcrEngine through the IOcrEngine.SpellCheckManager property.

LEADTOOLS OCR supports spell checking and correction through the use of external dictionaries. The value of IOcrSpellCheckManager.SpellCheckEngine acts as a global switch to use a particular spell checker or turn spell checking off.

If the value of this property is OcrSpellCheckEngine.None, then no spell checking is performed during the recognition process. When you set the value of this property to one of the supported engines, then the spell checking system is enabled and correction will be performed during the recognition process.

When you set the IOcrSpellCheckManager.SpellCheckEngine property to a value other than None, the OCR engine will automatically try to load the spell checker requested and queries the language dictionaries found on your machine. You can change SpellCheckEngine at any time during the life of the IOcrEngine depending on your application needs. For example, to disable spell checking while recognizing certain types of documents only and then re-enabling it for other types.

The OCR engine allows you to turn spell checking off (set SpellCheckEngine to OcrSpellCheckEngine.None). The additional spell checker support is as follows:

Use IOcrSpellCheckManager.GetSupportedSpellCheckEngines to query the spell check engines supported by the current OCR engine at runtime.

The default LEADTOOLS installation will only ship with OcrSpellCheckEngine.Native dictionaries for the following languages: English, German, French, Spanish and Italian. Additional language dictionaries are included in the LEADTOOLS Additional OCR Features setup available at https://www.leadtools.com.

Use IOcrSpellCheckManager.GetSupportedSpellLanguages to query the spell check languages (dictionaries) installed on the current machine at runtime. Use IOcrSpellCheckManager.GetAdditionalSpellLanguages to query the extra spell check languages (dictionaries) available to the engine at runtime but not installed (included in the Additional OCR Features Setup described above).

Example

This example will set various properties of the spell checking system.

C#
Java
using Leadtools; 
using Leadtools.Codecs; 
using Leadtools.Forms.Common; 
using Leadtools.Ocr; 
using Leadtools.Drawing; 
 
public void OcrSpellCheckManagerExample() 
{ 
   // Create an instance of the engine 
   using (IOcrEngine ocrEngine = OcrEngineManager.CreateEngine(OcrEngineType.LEAD)) 
   { 
      // Start the engine using default parameters 
      ocrEngine.Startup(null, null, null, LEAD_VARS.OcrLEADRuntimeDir); 
 
      IOcrSpellCheckManager spellCheckManager = ocrEngine.SpellCheckManager; 
 
      // Get the spell language supported (languages with a dictionary) 
      string[] spellLanguages = spellCheckManager.GetSupportedSpellLanguages(); 
      foreach (string spellLanguage in spellLanguages) 
         Console.WriteLine(spellLanguage); 
 
      // Check if English is supported 
      string language = "en"; 
      if (spellCheckManager.IsSpellLanguageSupported(language)) 
      { 
         // Yes, set it 
         spellCheckManager.SpellLanguage = language; 
         Console.WriteLine("Current spell language: {0}", spellCheckManager.SpellLanguage); 
      } 
 
      // Enable the spell checking system 
      spellCheckManager.SpellCheckEngine = OcrSpellCheckEngine.Native; 
 
      // Now perform other OCR functions here 
 
      // Shutdown the engine 
      // Note: calling Dispose will also automatically shutdown the engine if it has been started 
      ocrEngine.Shutdown(); 
   } 
} 
 
static class LEAD_VARS 
{ 
   public const string OcrLEADRuntimeDir = @"C:\LEADTOOLS23\Bin\Common\OcrLEADRuntime"; 
} 
 
import java.io.File; 
import java.io.IOException; 
 
import org.junit.*; 
import org.junit.runner.JUnitCore; 
import org.junit.runner.Result; 
import org.junit.runner.notification.Failure; 
import static org.junit.Assert.*; 
 
import leadtools.ocr.*; 
 
 
public void IOcrSpellCheckManagerExample() { 
   final String OCR_LEAD_RUNTIME_DIR = "C:\\LEADTOOLS23\\Bin\\Common\\OcrLEADRuntime"; 
   OcrEngine ocrEngine = OcrEngineManager.createEngine(OcrEngineType.LEAD); 
 
   // Start the engine using default parameters 
   ocrEngine.startup(null, null, null, OCR_LEAD_RUNTIME_DIR); 
   assertTrue("OCR engine failed to start", ocrEngine.isStarted()); 
 
   OcrSpellCheckManager spellCheckManager = ocrEngine.getSpellCheckManager(); 
 
   // Get the spell language supported (languages with a dictionary) 
   String[] spellLanguages = spellCheckManager.getSupportedSpellLanguages(); 
   for (var spellLanguage : spellLanguages) 
      System.out.println(spellLanguage); 
 
   // Check if English is supported 
   String language = "en"; 
   if (spellCheckManager.isSpellLanguageSupported(language)) { 
      // Yes, set it 
      spellCheckManager.setSpellLanguage(language); 
      System.out.println("Current spell language: " + spellCheckManager.getSpellLanguage()); 
   } 
 
   // Enable the spell checking system 
   spellCheckManager.setSpellCheckEngine(OcrSpellCheckEngine.NATIVE); 
   assertTrue("Spell checking system unsuccessfully enabled", spellCheckManager.getSpellCheckEngine() == OcrSpellCheckEngine.NATIVE); 
 
   // Shutdown the engine 
   // Note: calling Dispose will also automatically shutdown the engine if it has 
   // been started 
   ocrEngine.shutdown(); 
   ocrEngine.dispose(); 
} 
Requirements

Target Platforms

Help Version 23.0.2024.4.19
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2024 LEAD Technologies, Inc. All Rights Reserved.

Leadtools.Ocr Assembly
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2023 LEAD Technologies, Inc. All Rights Reserved.