Why Use Text Services Framework?
Text Services Framework (TSF) enables a TSF-enabled application to receive text input from any number of devices or sources. Because TSF is extensible, the application can receive text input from additional text sources with little or no modification.
A text service obtains text from, and provides text to, any TSF-enabled application without requiring any knowledge about the application. This structure enables the text service to be available to any TSF-enabled application. The text service can be installed or updated as a separate module and is independent of any specific application. TSF also 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.
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.
TSF is device-independent and enables text services for multiple input devices including keyboard, pen, and microphone.