> ## Documentation Index
> Fetch the complete documentation index at: https://docs.abbyy.com/llms.txt
> Use this file to discover all available pages before exploring further.

# RecognizerParams Object (IRecognizerParams Interface)

This object allows you to tune the recognition parameters. Each text block and table cell in layout has its own child object of the RecognizerParams type. Besides, this object is passed as a subobject of the [PageProcessingParams](/fine-reader/engine/api-reference/parameter-objects/preprocessing-analysis-recognition-and-synthesis-parameters/pageprocessingparams) object into ABBYY FineReader Engine layout analysis-recognition functions. Recognition functions use parameters of recognition defined by text blocks' and table cells' child objects of the type RecognizerParams.

Whenever a text block or table cell is created during layout analysis, properties of its child object of the RecognizerParams type are initialized with values of properties of the RecognizedParams object that was passed to analysis function. Properties of a subobject of the block which is created using the [AddNew](/fine-reader/engine/api-reference/layout-related-objects/layoutblocks/addnew-method) method of the [LayoutBlocks](/fine-reader/engine/api-reference/layout-related-objects/layoutblocks) object are set to reasonable defaults. To know about the default value of this or that property see its description.

The RecognizerParams object is a persistent object. This means that the object's current state can be written to persistent storage. Later, the object can be re-created by reading the object's state from the persistent storage. The following methods provide persistence of the object:

Linux: [SaveToFile](/fine-reader/engine/api-reference/supplementary-objects-and-methods/savetofile-method), and [LoadFromFile](/fine-reader/engine/api-reference/supplementary-objects-and-methods/loadfromfile-method)

Windows [SaveToFile](/fine-reader/engine/api-reference/supplementary-objects-and-methods/savetofile-method), [LoadFromFile](/fine-reader/engine/api-reference/supplementary-objects-and-methods/loadfromfile-method), [SaveToMemory](/fine-reader/engine/api-reference/supplementary-objects-and-methods/savetomemory-method), and [LoadFromMemory](/fine-reader/engine/api-reference/supplementary-objects-and-methods/loadfrommemory-method).

## Properties

<table><thead><tr><th><p><strong>Name</strong></p></th><th><p><strong>Type</strong></p></th><th><p><strong>Description</strong></p></th></tr></thead><tbody><tr><td><p><strong>Application</strong></p></td><td><p><strong><a href="/fine-reader/engine/api-reference/engine-object-iengine-interface">Engine</a></strong>, <a href="/fine-reader/engine/guided-tour/advanced-techniques/programming-aspects/working-with-properties#readonly_properties">read-only</a></p></td><td><p>Returns the <strong>Engine</strong> object.</p></td></tr><tr><td colspan="3"><p><em>Main settings</em></p></td></tr><tr><td><p><a name="textlanguage" /><strong>TextLanguage</strong></p></td><td><p><strong><a href="/fine-reader/engine/api-reference/language-related-objects/textlanguage">TextLanguage</a></strong></p></td><td><p>Specifies the language to be used for recognition. This property can be easily set via the <strong><a href="/fine-reader/engine/api-reference/parameter-objects/preprocessing-analysis-recognition-and-synthesis-parameters/recognizerparams/setpredefinedtextlanguage-method">SetPredefinedTextLanguage</a></strong> method.</p><Note>The property returns a constant object. To change the recognition language, you must at first obtain an intermediate TextLanguage object using an appropriate creation method, change the necessary parameters, and then assign the obtained object to the property.</Note><p>By default, this parameter is initialized with English language.</p></td></tr><tr><td><p><a name="languagedetectionmode" /><strong>LanguageDetectionMode</strong></p></td><td><p><strong><a href="/fine-reader/engine/api-reference/enumerations/threestatepropertyvalueenum">ThreeStatePropertyValueEnum</a></strong></p></td><td><p>Manages automatic language detection.</p><p>When language autodetection is on, the recognition language is detected for each word in the text. It is selected from the list of languages specified in the <strong>TextLanguage</strong> property. Autodetection is intended to be used during recognition of documents the language of which is not known to you.</p><Warning>Language autodetection deals only with the predefined languages (see the full list in <a href="/fine-reader/engine/specifications/predefined-languages">Predefined Languages in ABBYY FineReader Engine)</a>.</Warning><p>If you know for certain that all the languages you specified are present in the document, autodetection is useless. Turn it off by setting this property to TSPV\_No.</p><p>You can view the list of languages detected in the recognized document or recognized page using the <strong>DetectedLanguages</strong> property of the <strong><a href="/fine-reader/engine/api-reference/document-related-objects/frdocument#detectedlanguages">FRDocument</a></strong> or <strong><a href="/fine-reader/engine/api-reference/document-related-objects/frpage#detectedlanguages">FRPage</a></strong> object.</p><p>By default, this property value is TSPV\_Auto.</p></td></tr><tr><td><p><a name="texttypes" /><strong>TextTypes</strong></p></td><td><p><strong><a href="/fine-reader/engine/guided-tour/advanced-techniques/programming-aspects/working-with-properties">int</a></strong></p></td><td><p>The value of this property is an OR superposition of the <strong><a href="/fine-reader/engine/api-reference/enumerations/texttypeenum">TextTypeEnum</a></strong> enumeration constants which denote possible text types used for recognition. For example, if it is set to TT\_Normal | TT\_Index, ABBYY FineReader Engine will presume that the text contains only common typographic text and digits written in ZIP-code style, ignoring all other variants. See also <a href="/fine-reader/engine/guided-tour/advanced-techniques/using-text-type-autodetection">Using Text Type Autodetection</a>.</p><p>Notes:</p><ul><li>If this property is equal to any combination of TT\_Matrix, TT\_Typewriter, TT\_OCR\_A, and TT\_OCR\_B, italic fonts and superscript/subscript will not be recognized, regardless of the values of the <strong>ProhibitItalic</strong>, <strong>ProhibitSubscript</strong> and <strong>ProhibitSuperscript</strong> properties.</li><li>If this property is TT\_Handwritten, the orientation of the image cannot be corrected.</li><li>In Windows:<ul><li>if this property is set to TT\_Handwritten or TT\_Index, the <strong>TrainUserPatterns</strong> property cannot be set to TRUE.</li><li>if the <strong>TrainUserPatterns</strong> property is set to TRUE, the <strong>TextTypes</strong> property must contain only one text type.</li></ul></li></ul><p>By default, this property is set to TT\_Normal.</p></td></tr><tr><td><p><a name="detecttexttypesindependently" /><strong>DetectTextTypesIndependently</strong></p></td><td><p><strong><a href="/fine-reader/engine/guided-tour/advanced-techniques/programming-aspects/working-with-properties">VARIANT\_BOOL</a></strong></p></td><td><p>Indicates that text type should be determined for each text block separately. This setting is useful when you have comparatively small text blocks with different text types, although it may slightly slow down processing.</p><p>The default value of this property is FALSE.</p></td></tr><tr><td colspan="3"><p><em>Recognition speed</em></p></td></tr><tr><td><p><a name="mode" /><strong>Mode</strong></p></td><td><p><strong><a href="/fine-reader/engine/api-reference/enumerations/recognitionmodeenum">RecognitionModeEnum</a></strong></p></td><td><p>Specifies the recognition mode to be applied to the target documents. Each mode provides its own level of recognition speed and accuracy to get satisfying results on images and documents with various peculiarities.</p><p>By default, this property is set to RM\_Normal.</p><Warning>Built-in patterns are always used for the accurate mode. To disable using the built-in patterns, switch to the normal mode (RM\_Normal).</Warning></td></tr><tr><td colspan="3"><p><em>Fine tuning</em></p></td></tr><tr><td><p><a name="lowresolutionmode" /><strong>LowResolutionMode</strong></p></td><td><p><strong><a href="/fine-reader/engine/guided-tour/advanced-techniques/programming-aspects/working-with-properties">VARIANT\_BOOL</a></strong></p></td><td><p>Specifies whether a text on an image with low resolution is recognized. This property is useful when recognizing faxes, small prints, images with low resolution or bad print quality.</p><p>By default, the value of this property is FALSE.</p></td></tr><tr><td><p><a name="onelineperblock" /><strong>OneLinePerBlock</strong></p></td><td><p><strong><a href="/fine-reader/engine/guided-tour/advanced-techniques/programming-aspects/working-with-properties">VARIANT\_BOOL</a></strong></p></td><td><p>This property set to TRUE tells ABBYY FineReader Engine to presume that the text in block to which the current <strong>RecognizerParams</strong> object belongs contains no more than one string.</p><p>By default, this property is FALSE.</p></td></tr><tr><td><p><a name="onewordperline" /><strong>OneWordPerLine</strong></p></td><td><p><strong><a href="/fine-reader/engine/guided-tour/advanced-techniques/programming-aspects/working-with-properties">VARIANT\_BOOL</a></strong></p></td><td><p>This property set to TRUE tells ABBYY FineReader Engine to presume that no text line may contain more than one word, so the lines of text will be recognized as a single word.</p><p>By default, this property is FALSE.</p></td></tr><tr><td><p><a name="prohibititalic" /><strong>ProhibitItalic</strong></p></td><td><p><strong><a href="/fine-reader/engine/guided-tour/advanced-techniques/programming-aspects/working-with-properties">VARIANT\_BOOL</a></strong></p></td><td><p>This property set to TRUE tells ABBYY FineReader Engine not to recognize letters printed with italic-styled font. It is useful when a text with presumably no italic letters is recognized, in which case it may speed up the recognition. If there exist any italic letters on the image, and this property is TRUE, these letters will be recognized incorrectly.</p><p>By default, this property is FALSE.</p></td></tr><tr><td><p><a name="prohibitsubscript" /><strong>ProhibitSubscript</strong></p></td><td><p><strong><a href="/fine-reader/engine/guided-tour/advanced-techniques/programming-aspects/working-with-properties">VARIANT\_BOOL</a></strong></p></td><td><p>This property set to TRUE tells ABBYY FineReader Engine not to recognize subscript letters. It is useful when a text with presumably no subscripts is recognized, in which case it may speed up the recognition. If there exist any subscript letters on the image, and this property is TRUE, these letters will be recognized incorrectly.</p><p>By default, this property is FALSE.</p></td></tr><tr><td><p><a name="prohibitsuperscript" /><strong>ProhibitSuperscript</strong></p></td><td><p><strong><a href="/fine-reader/engine/guided-tour/advanced-techniques/programming-aspects/working-with-properties">VARIANT\_BOOL</a></strong></p></td><td><p>This property set to TRUE tells ABBYY FineReader Engine not to recognize superscript letters. It is useful when a text with presumably no superscripts is recognized, in which case it may speed up the recognition. If there exist any superscript letters on the image, and this property is TRUE, these letters will be recognized incorrectly.</p><p>By default, this property is FALSE.</p></td></tr><tr><td><p><a name="prohibithyphenation" /><strong>ProhibitHyphenation</strong></p></td><td><p><strong><a href="/fine-reader/engine/guided-tour/advanced-techniques/programming-aspects/working-with-properties">VARIANT\_BOOL</a></strong></p></td><td><p>This property set to TRUE prohibits recognition of hyphenation from line to line. It is useful when a text with presumably no hyphenations is recognized, in which case it may speed up the recognition. If there exist any hyphenations in the recognized block, and this property is TRUE, the hyphenated words will be recognized incorrectly.</p><p>By default, this property is FALSE.</p></td></tr><tr><td><p><a name="prohibitsmallcaps" /><strong>ProhibitSmallCaps</strong></p></td><td><p><strong><a href="/fine-reader/engine/guided-tour/advanced-techniques/programming-aspects/working-with-properties">VARIANT\_BOOL</a></strong></p></td><td><p>This property set to TRUE tells ABBYY FineReader Engine not to recognize small capitals.</p><p>By default, this property is FALSE.</p></td></tr><tr><td><p><a name="prohibitinterblockhyphenation" /><strong>ProhibitInterblockHyphenation</strong></p></td><td><p><strong><a href="/fine-reader/engine/guided-tour/advanced-techniques/programming-aspects/working-with-properties">VARIANT\_BOOL</a></strong></p></td><td><p>This property set to TRUE tells ABBYY FineReader Engine to presume that text from one block cannot be carried over to the next block.</p><p>By default, this property is FALSE.</p></td></tr><tr><td><p><a name="caserecognitionmode" /><strong>CaseRecognitionMode</strong></p></td><td><p><strong><a href="/fine-reader/engine/api-reference/enumerations/caserecognitionmodeenum">CaseRecognitionModeEnum</a></strong></p></td><td><p>This property specifies the mode of letter case recognition.</p><p>By default, the value of this property is CRM\_AutoCase, which corresponds to automatic case recognition.</p></td></tr><tr><td><p><a name="fieldmarkingtype" /><strong>FieldMarkingType</strong></p></td><td><p><strong><a href="/fine-reader/engine/api-reference/enumerations/fieldmarkingtypeenum">FieldMarkingTypeEnum</a></strong></p></td><td><p>This property specifies the type of marking around letters (for example, underline, frame, box, etc.).</p><Note>For marking types where each letter is in a separate cell please use CellsCount property to set the number of character cells for a recognized block.</Note><p>By default, the value of this property is FMT\_SimpleText, which means no marking.</p></td></tr><tr><td><p><a name="cellscount" /><strong>CellsCount</strong></p></td><td><p><strong><a href="/fine-reader/engine/guided-tour/advanced-techniques/programming-aspects/working-with-properties">int</a></strong></p></td><td><p>Specifies the number of character cells in the block.</p><p>It makes sense only for the field marking types (the <strong>FieldMarkingType</strong> property) in which every letter is written in a separate cell.</p><p>Default value for this property is 1, but you should set the appropriate value to recognize the text correctly.</p></td></tr><tr><td colspan="3"><p><em>User patterns</em></p></td></tr><tr><td><p><a name="trainuserpatterns" /><strong>TrainUserPatterns</strong></p><Note>Windows only.</Note></td><td><p><strong><a href="/fine-reader/engine/guided-tour/advanced-techniques/programming-aspects/working-with-properties">VARIANT\_BOOL</a></strong></p></td><td><p>This property specifies whether user patterns should be trained during the recognition. The <a href="/fine-reader/engine/guided-tour/advanced-techniques/using-gui-elements/training-user-patterns/pattern-training-dialog-box">Pattern Training</a> dialog box will be displayed during recognition.</p><p>For correct operation of pattern training process it is necessary to:</p><ul><li>set the value of the parent window HWND handle (<strong><a href="/fine-reader/engine/api-reference/engine-object-iengine-interface/properties#parentwindow">IEngine::ParentWindow</a></strong> property)</li><li>specify some user pattern file in the <strong>UserPatternsFile</strong> property</li></ul><p>See also <a href="/fine-reader/engine/guided-tour/advanced-techniques/using-gui-elements/recognizing-with-training">Recognizing with Training</a>.</p><p>If this property is set to TRUE:</p><ul><li>the <strong>TextTypes</strong> property must contain only one text type, and this text type cannot be TT\_Handwritten or TT\_Index</li><li>the <strong><a href="/fine-reader/engine/api-reference/parameter-objects/preprocessing-analysis-recognition-and-synthesis-parameters/pagepreprocessingparams">CorrectOrientation</a> </strong>property of the <strong>PagePreprocessingParams</strong> object cannot be set to TRUE</li></ul><Note>Pattern training is not supported for Chinese, Japanese, and Korean languages.</Note><p>By default, this property is FALSE.</p></td></tr><tr><td><p><a name="usebuiltinpatterns" /><strong>UseBuiltInPatterns</strong></p></td><td><p><strong><a href="/fine-reader/engine/guided-tour/advanced-techniques/programming-aspects/working-with-properties">VARIANT\_BOOL</a></strong></p></td><td><p>This property set to TRUE means that ABBYY FineReader Engine will use its own built-in patterns for recognition. Patterns are files establishing relationship between character image and character itself. You may want to set this property to FALSE when you do not want to use standard ABBYY FineReader Engine patterns for character recognition, but user patterns only. This may be useful for recognition of text typed with decorative or non-standard fonts. In this case, it is better not to use ABBYY FineReader Engine built-in patterns but use your own user-defined patterns trained for these fonts.</p><p>A path to user-defined pattern file is stored in the <strong>UserPatternsFile</strong> property. If the <strong>UserPatternsFile </strong>property is empty the <strong>UseBuiltInPatterns </strong>property is ignored. For Windows, see also <a href="/fine-reader/engine/guided-tour/advanced-techniques/using-gui-elements/recognizing-with-training">Recognizing with Training</a>.</p><p>By default, this property is TRUE.</p><Warning>You may set this property to FALSE in case of using the normal and fast recognition modes. You cannot prohibit using the built-in patterns for the accurate mode (see description of the <a href="/fine-reader/engine/api-reference/parameter-objects/preprocessing-analysis-recognition-and-synthesis-parameters/recognizerparams#mode">Mode</a> property).</Warning></td></tr><tr><td><p><a name="userpatternsfile" /><strong>UserPatternsFile</strong></p></td><td><p><strong><a href="/fine-reader/engine/guided-tour/advanced-techniques/programming-aspects/working-with-properties">BSTR</a></strong></p></td><td><p>Contains the full path to a file of the user pattern used for recognition. If the value of this property is not empty, information from the user pattern file will be used during recognition.</p><p>If the <strong>UseBuiltInPatterns</strong> property is FALSE, which means that standard ABBYY FineReader Engine patterns are not used during recognition, this property should contain a path to user-defined pattern file, as only information stored in it will be used. For Windows, see also <a href="/fine-reader/engine/guided-tour/advanced-techniques/using-gui-elements/recognizing-with-training">Recognizing with Training</a>.</p><p>By default, this property stores an empty string.</p><Warning>User pattern files created in ABBYY FineReader Engine 10 or earlier cannot be opened in FineReader Engine 12 Release 6 or later. To continue using them, save older user pattern files in the new format:</Warning><ul><li>Use FineReader Engine 11 or FineReader Engine 12 Release 5 or earlier.</li><li>Call the <strong><a href="/fine-reader/engine/api-reference/engine-object-iengine-interface/supplementary-methods/mergepatterns-method">MergePatterns</a></strong> method of the <strong><a href="/fine-reader/engine/api-reference/engine-object-iengine-interface">Engine</a></strong> object, passing in a string collection with the name of older pattern file and a full path to new file.</li></ul></td></tr><tr><td colspan="3"><p><em>Additional recognition information</em></p></td></tr><tr><td><p><a name="highlightsuspiciouscharacters" /><strong>HighlightSuspiciousCharacters</strong></p></td><td><p><strong><a href="/fine-reader/engine/guided-tour/advanced-techniques/programming-aspects/working-with-properties">VARIANT\_BOOL</a></strong></p></td><td><p>Specifies if uncertainly recognized characters should be have the <strong>IsSuspicious</strong> property set to TRUE.</p><p>The name of the property reflects the fact that ABBYY FineReader highlights suspicious characters in text with background color, which makes manual verification easier for the operator.</p><p>By default, this property is TRUE.</p></td></tr><tr><td><p><a name="exactconfidencecalculation" /><strong>ExactConfidenceCalculation</strong></p></td><td><p><strong><a href="/fine-reader/engine/guided-tour/advanced-techniques/programming-aspects/working-with-properties">VARIANT\_BOOL</a></strong></p></td><td><p>This property is deprecated and will be deleted in future versions.</p></td></tr><tr><td><p><a name="savecharacterregions" /><strong>SaveCharacterRegions</strong></p></td><td><p><strong><a href="/fine-reader/engine/guided-tour/advanced-techniques/programming-aspects/working-with-properties">VARIANT\_BOOL</a></strong></p></td><td><p>Specifies whether the exact characters regions (<strong><a href="/fine-reader/engine/api-reference/text-related-objects/charparams#characterregion">ICharParams::CharacterRegion</a></strong>) are saved.</p><p>The default value is FALSE.</p></td></tr><tr><td><p><a name="savecharacterrecognitionvariants" /><strong>SaveCharacterRecognitionVariants</strong></p></td><td><p><strong><a href="/fine-reader/engine/guided-tour/advanced-techniques/programming-aspects/working-with-properties">VARIANT\_BOOL</a></strong></p></td><td><p>Specifies whether the variants of characters recognition are saved.</p><Note>The <a href="/fine-reader/engine/api-reference/text-related-objects/charparams#characterrecognitionvariants">ICharParams::CharacterRecognitionVariants</a> property returns a collection of recognition variants for a character. See also <a href="/fine-reader/engine/guided-tour/advanced-techniques/using-voting-api">Using Voting API</a>.</Note><p>The default value is FALSE.</p></td></tr><tr><td><p><a name="savewordrecognitionvariants" /><strong>SaveWordRecognitionVariants</strong></p></td><td><p><strong><a href="/fine-reader/engine/guided-tour/advanced-techniques/programming-aspects/working-with-properties">VARIANT\_BOOL</a></strong></p></td><td><p>Specifies whether the variants of recognition of a word are saved.</p><Note>The <a href="/fine-reader/engine/api-reference/text-related-objects/paragraph/getwordrecognitionvariants-metho">IParagraph::GetWordRecognitionVariants</a> method and <a href="/fine-reader/engine/api-reference/text-related-objects/charparams#wordrecognitionvariants">ICharParams::WordRecognitionVariants</a> property return a collection of recognition variants for a word. See also <a href="/fine-reader/engine/guided-tour/advanced-techniques/using-voting-api">Using Voting API</a>.</Note><p>The default value is FALSE.</p></td></tr></tbody></table>

## Methods

| Name                                                                                                                                                                                           | Description                                                                                       |
| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------- |
| [CopyFrom](/fine-reader/engine/visual-components-reference/supplementary-objects/spellwordcollection/copyfrom-method)                                                                          | Initializes properties of the current object with values of similar properties of another object. |
| [LoadFromFile](/fine-reader/engine/api-reference/supplementary-objects-and-methods/loadfromfile-method)                                                                                        | Restores the object contents from a file on disk.                                                 |
| [LoadFromMemory](/fine-reader/engine/api-reference/supplementary-objects-and-methods/loadfrommemory-method) <br /><br /> **Note:** *Windows only.*                                             | Restores the object contents from the global memory.                                              |
| [SaveToFile](/fine-reader/engine/api-reference/supplementary-objects-and-methods/savetofile-method)                                                                                            | Saves the object contents into a file on disk.                                                    |
| [SaveToMemory](/fine-reader/engine/api-reference/supplementary-objects-and-methods/savetomemory-method) <br /><br /> **Note:** *Windows only.*                                                 | Saves the object contents into the global memory.                                                 |
| [SetPredefinedTextLanguage](/fine-reader/engine/api-reference/parameter-objects/preprocessing-analysis-recognition-and-synthesis-parameters/recognizerparams/setpredefinedtextlanguage-method) | Sets the language of recognition to be one of the predefined ABBYY FineReader Engine languages.   |

## Related objects

<img src="https://mintcdn.com/abbyy/i-EfCQVmseNiPQcp/images/fine-reader/engine/recognizerparams.gif?s=dc585197071b36bf40c8bebb60ba52b2" alt="RecognizerParams" width="397" height="93" data-path="images/fine-reader/engine/recognizerparams.gif" />[](/fine-reader/engine/api-reference/layout-related-objects/textblock#recognizerparams)[](/fine-reader/engine/api-reference/parameter-objects/preprocessing-analysis-recognition-and-synthesis-parameters/pageprocessingparams#recognizerparams)[](/fine-reader/engine/api-reference/language-related-objects/textlanguage)[](/fine-reader/engine/api-reference/parameter-objects/preprocessing-analysis-recognition-and-synthesis-parameters/pageprocessingparams)[](/fine-reader/engine/api-reference/layout-related-objects/textblock)[](/fine-reader/engine/api-reference/layout-related-objects/block)

[Object Diagram](/fine-reader/engine/api-reference/object-diagram)

## Output parameter

This object is the output parameter of the [CreateRecognizerParams](/fine-reader/engine/api-reference/engine-object-iengine-interface/creation-methods/createlessobjectgreater-methods) method of the [Engine](/fine-reader/engine/api-reference/engine-object-iengine-interface) object.

## Input parameter

This object is passed as an input parameter to the following methods:

* [Preprocess](/fine-reader/engine/api-reference/document-related-objects/frdocument/preprocess-method), [PreprocessPages](/fine-reader/engine/api-reference/document-related-objects/frdocument/preprocesspages-method), [Analyze](/fine-reader/engine/api-reference/document-related-objects/frdocument/analyze-method), [AnalyzePages](/fine-reader/engine/api-reference/document-related-objects/frdocument/analyzepages-method) methods of the [FRDocument](/fine-reader/engine/api-reference/document-related-objects/frdocument) object
* [Preprocess](/fine-reader/engine/api-reference/document-related-objects/frpage/preprocess-method), [Analyze](/fine-reader/engine/api-reference/document-related-objects/frpage/analyze-method), [AnalyzeRegion](/fine-reader/engine/api-reference/document-related-objects/frpage/analyzeregion-method), [AnalyzeTable](/fine-reader/engine/api-reference/document-related-objects/frpage/analyzetable-method), [IsEmpty](/fine-reader/engine/api-reference/document-related-objects/frpage/isempty-method) methods of the [FRPage](/fine-reader/engine/api-reference/document-related-objects/frpage) object

## Samples

<Accordion title="C# code">
  ```csharp theme={null}
  FREngine.IEngine engine;
  string fileName;
  // Train user pattern during recognition
  FREngine.IDocumentProcessingParams processingParams = Engine.CreateDocumentProcessingParams();
  FREngine.IRecognizerParams recognizerParams = processingParams.PageProcessingParams.RecognizerParams;
  Engine.CreateEmptyUserPattern( fileName );
  Engine.MultiProcessingParams.MultiProcessingMode = FREngine.MultiProcessingModeEnum.MPM_Sequential;
  recognizerParams.UserPatternsFile = fileName;
  recognizerParams.TrainUserPatterns = true;
  Document.Process(processingParams);
  ```
</Accordion>

The object is used in the following code samples:

* Linux: [CustomLanguage](/fine-reader/engine/guided-tour/samples#customlanguage), [CommandLineInterface](/fine-reader/engine/guided-tour/samples#commandlineinterface)
* Windows: [CustomLanguage](/fine-reader/engine/guided-tour/samples#customlanguage), [CommandLineInterface](/fine-reader/engine/guided-tour/samples#commandlineinterface); and demo tools: [BatchProcessingRecognition](/fine-reader/engine/guided-tour/samples#batchprocessingrecognition), [Classification](/fine-reader/engine/guided-tour/samples#classification), [MultiProcessingRecognition](/fine-reader/engine/guided-tour/samples#multiprocessingrecognition), [PDFExportProfiles](/fine-reader/engine/guided-tour/samples#pdfexportprofiles), [User Pattern Training Utility](/fine-reader/engine/guided-tour/samples#user_pattern_training_utility)

## See also

[Tuning Parameters of Preprocessing, Analysis, Recognition, and Synthesis](/fine-reader/engine/guided-tour/advanced-techniques/tuning-parameters-of-preprocessing-analysis-recognition-and-synthesis)

[Recognizing Handwritten Texts](/fine-reader/engine/guided-tour/advanced-techniques/recognizing-handwritten-texts)

[PageProcessingParams](/fine-reader/engine/api-reference/parameter-objects/preprocessing-analysis-recognition-and-synthesis-parameters/pageprocessingparams#recognizerparams)

[TextBlock](/fine-reader/engine/api-reference/layout-related-objects/textblock#recognizerparams)

[Working with Properties](/fine-reader/engine/guided-tour/advanced-techniques/programming-aspects/working-with-properties)
