String verification through optical character recognition (OCR) is achieved using
CitrixVerifyText or
CitrixVerifyTextFuzzy API calls. These functions are inserted via
TrueLog Explorer during script customization.
CitrixVerifyText and
CitrixVerifyTextFuzzy functions compare text strings in replay bitmaps to determine if they are identical.
CitrixParseText and
CitrixParseTextFuzzy functions are available for parsing text.
Silk Performer offers two distinct OCR techniques:
- Font-based OCR approach: The font-based approach compares text bitmaps to bitmaps of system fonts. This approach relies on
pattern databases to recognize varying fonts and text styles. Font databases must be generated before font-based OCR can be
used. Characters are only recognized if they can be exactly reproduced by a system font and its styles. OCR results may be
poor if font smoothing techniques such as anti-aliasing or ClearType are used. The font-based OCR approach is optimized for
performance and resource consumption.
- Fuzzy OCR with language affinity: Through fuzzy text recognition this approach analyzes text images using a character and
language knowledge base. Rather than comparing images to font bitmaps, the fuzzy OCR uses proprietary text and language recognition
algorithms.
Only Citrix TrueLogs show verification and parsing API calls in the menu tree. With other TrueLog modes (for example, Web
and database), new API nodes are not added to the menu tree.
Note: OCR operations should be performed on static content. When synchronizing on window events it is possible that screen refresh
may be slightly delayed, which will result in timing-dependent outcomes. If a screen changes too frequently the correct image
may not be selected for comparison if timing is off. Therefore you should script a wait or a
CitrixWaitForScreen function call before all OCR verification or parsing functions.