Characters, Glyphs and Fonts

We often speak inaccurately of character sets: we may refer to a "Greek character set" or a "Latin character set". But in order to understand how different writing systems are supported by Windows, we need to be more precise about characters.

Users don't view or print characters: a user views or prints glyphs. A glyph is a representation of a character. The character "Capital Letter A" is represented by the glyph "A" in Times New Roman Bold, and "A" in Arial Bold. A font is a collection of glyphs. Windows is able to retrieve the appropriate glyphs by using mapping information about the keyboard, the language system in use, and the glyphs associated with each character.

Fonts are designed with character sets in mind: a font for use in Russia will include glyphs representing Cyrillic characters. There is no magic word or blessing uttered to create a "character set." A character set is only a collection of characters. However, characters from different language systems are conventionally divided into different "character sets", primarily because, in the past, a limited number of characters could be "addressed" at any one time.

Preparing for TrueType Open:
Glyph Substitution

Glyphs can also represent combinations of characters and alternate forms of characters: there is not a strict one-to-one correspondence between glyphs and characters. For example, two characters may be typed in a document, but represented by only a single glyph (a ligature glyph). Conversely, different versions of a character may appear at the beginning, middle, or ending of a word. Thus, a single character can be represented by several different glyphs in a font.

TrueType Open will provide a substitution table to handle one-to-one, one-to-many, and many-to-one mappings.