AddWordsToCacheDictionary Method of the FRPage Object

This method adds a group of words to the cache dictionary. The cache dictionary is a small dictionary (about a hundred words) which can be changed easily during processing. The cache dictionaries can be used when it is possible to select a dictionary more precisely, if you found new information about the document during processing.

If any of the words you are adding already exists in the dictionary, no duplicate will be created, but the weight of this word will be equal to the maximum of the weight specified in dictionary and the weight you pass in call to this method.

Important! To use the cache dictionary, you should set the IEngine::AutoCleanRecognizerSession property to FALSE. The AutoCleanRecognizerSession property is set to TRUE by default, which means that FineReader Engine cleans its recognition session after recognition of each page, in which case the cache dictionary is cleaned too. To prevent accidental destruction of user data, FineReader Engine prohibits using of cache dictionaries in this mode. If you use the cache dictionary, it is your concern to clean the recognition session manually by calling the IEngine::CleanRecognizerSession method when necessary. See the description of the method to find out when it is necessary to clean the recognition session.



HRESULT AddWordsToCacheDictionary(
  IRecognizerParams*  params,
  IStringsCollection* Words,
  IIntsCollection*    Weights


void AddWordsToCacheDictionary(
  IRecognizerParams  params,
  IStringsCollection Words,
  IIntsCollection    Weights

Visual Basic .NET

Sub AddWordsToCacheDictionary( _
  params As IRecognizerParams, _
  Words As IStringsCollection, _
  [Weights As IIntsCollection = Nothing] _


[in] The RecognizerParams object that stores parameters of page processing.
[in] This parameter of the StringsCollection type contains the collection of the newly added words.
[in] This parameter of the IntsCollection type that must have the same size as the collection of words, is used to pass information about the weights for the newly added words. The weights for the words must be in the range from 1 to 100. You may pass 0 for this parameter, in which case all the words will be included in the dictionary with default weights of 100. The weight assigned to the word in the dictionary may have a set of discrete values only. The value passed in this parameter is rounded to the nearest of the discrete set of values.

Return values

This method has no specific return values. It returns the standard return values of ABBYY FineReader Engine functions.


  • For more efficient operation we recommend that you pre-sort the added words in alphabetical order.
  • For adding one word into the cache dictionary, you can use the AddWordToCacheDictionary method.

See also


Working with Dictionaries

24.03.2023 8:51:52

Usage of Cookies. In order to optimize the website functionality and improve your online experience ABBYY uses cookies. You agree to the usage of cookies when you continue using this site. Further details can be found in our Privacy Notice.