Skip to main content
This object represents a single predefined language from a collection of ABBYY FineReader Engine predefined languages. Predefined languages are languages that are supported by default. This object contains properties reflecting predefined language attributes, such as its external name, components and category. Property TextLanguage contains the corresponding text language.

Properties

Name

Type

Description

Application

Engine, read-only

Returns the Engine object.

ExternalName

BSTR, read-only

Stores the external name of the predefined language. This name is localized and may be used in user interface. The value of this property depends on the current messages language (IEngine::MessagesLanguage property). For example if the messages language is English, then the name of the predefined language corresponding to the French, will be “French”. If the messages language is French, then the name of the same predefined language will be “Français”.

InternalName

BSTR, read-only

Stores the internal name of the predefined language. It is this name that should be passed to the IPredefinedLanguages::Find method. For the list of available internal names of the predefined languages see List of ABBYY FineReader Engine predefined languages.

LanguageCategory

LanguageCategoryEnum, read-only

Indicates the category to which the current predefined language belongs. You may use this property to organize languages in your user interface.

TextLanguage

TextLanguage, read-only

Provides access to the TextLanguage object corresponding to the current predefined language. The TextLanguage object returned by this property is read-only (its modification methods return E_FAIL). Whenever you need to create an editable text language corresponding to a predefined recognition language, do the following two steps:

  1. Create an empty TextLanguage object.
  2. Call its CopyFrom method with a pointer to a predefined TextLanguage object’s interface as its input parameter. A pointer to a predefined text language object’s interface may be got from this property.

You may want to use this property to initialize the IRecognizerParams::TextLanguage property with the value corresponding to the predefined language. The alternative way is to call the IRecognizerParams::SetPredefinedTextLanguage method.

PredefinedLanguage Object Diagram

Output parameter

This object is the output parameter of the Item, Find methods of the PredefinedLanguages object.

Samples

FREngine.IEngine engine;
// Create new TextLanguage object as a copy of predefined English language
ILanguageDatabase languageDatabase = Engine.CreateLanguageDatabase();
ITextLanguage textLanguage = languageDatabase.CreateTextLanguage();
// Copy all attributes from predefined English language
ITextLanguage englishLanguage = Engine.PredefinedLanguages.Find( "English" )
 .TextLanguage;
textLanguage.CopyFrom( englishLanguage );
textLanguage.InternalName = "SampleTextLanguage";
The object is used in the following code samples:

See also

PredefinedLanguages TextLanguage List of ABBYY FineReader Engine predefined languages Working with Languages Working with Properties