Software:Text Services Framework

From HandWiki
Short description: Software framework and API for input method in Microsoft Windows
Text Services Framework
LangSwitch.gif
A standalone Language Bar in Windows XP, with language selection menu open
Developer(s)Microsoft
Operating systemMicrosoft Windows
PlatformIA-32, x86-64, Itanium, ARM64
PredecessorInput Method Manager (IMM32)
TypeSoftware framework
Websitedocs.microsoft.com/en-us/windows/win32/tsf/text-services-framework

The Text Services Framework (TSF) is a COM framework and API in Windows XP and later Windows operating systems that supports advanced text input and text processing. The Language Bar is the core user interface for Text Services Framework.

Overview

The Text Services Framework is designed to offer advanced language and word processing features to applications. It supports features such as multilingual support, keyboard drivers, handwriting recognition, speech recognition, as well as spell checking and other text and natural language processing functions. It is also downloadable for older Windows operating systems.[1]

The Language Bar enables text services to add UI elements to the toolbar and enables these elements when an application has focus. From the Language Bar, users can select the input language, and control keyboard input, handwriting recognition and speech recognition.

The language bar also provides a direct means to switch between installed languages, even when a non-TSF-enabled application has focus.

Starting with Windows XP Tablet PC Edition 2005 and Windows Vista, the RichEdit control supports the Text Services Framework. Windows Speech Recognition in Windows Vista is also implemented using the Text Services Framework.

Language bar tools – From left: Language selection menu, spell checking, keyboard layout selection menu, speech recognition, tools, handwriting recognition and drawing pad

Features

  • TSF is extensible. Independent software vendors can write their own text processing feature for TSF.
  • TSF-enabled applications can receive text input from any text service that supports TSF without having to be aware of any details of the text source.[2] Services built using TSF are globally available to any application.
  • TSF enables a text service to store metadata with a document, a piece of text, or an object within the document. For example, a speech input text service can store sound information associated with a block of text.[3]
  • TSF enables text services to provide accurate and complete text conversion, with continuous access to the document buffer. Text services using TSF can avoid separating their functionality into modes for input and modes for editing. This input architecture enables the buffered and accumulating text stream to change dynamically, thereby enabling more efficient keyboard input and text editing.[3]
  • TSF is device-independent and enables text services for multiple input devices including keyboard, electronic pen or stylus, and microphone.[3]

ctfmon and CTF

ctfmon (ctfmon.exe) is a process used to activate the Alternative User Input Text Input Processor (TIP) and also the Microsoft Language Bar. Ctfmon is also a component of Windows XP Tablet PC Edition, Windows Vista and Windows 7 which enables advanced user input services in applications (pen and ink, speech etc.).[4]

CTF means Common Text Framework according to the leaked Windows XP source code[5] and US patent 7490296 patent text.

CTF is an undocumented, insecure protocol involved in TSF which security researchers have observed to be present in Windows versions back to Windows XP.[6][7]

References

External links