Go to the previous, next chapter.

Preliminaries

Character: an informational unit consisting of a value (usually a byte) and roughly corresponding to what we think of as letters, numbers, punctuation, etc.

Glyph: a presentational unit corresponding roughly to what we think of as letters, numbers, punctuation, etc.

Character vs glyph: Glyph and character are not necessarily the same; the character may be mapped to a Times Roman Lower Case glyph in one font and to a Helvetica Lower Case glyph in another font. Change of glyphs normally means a change in style of presentation, while change in characters normally means a change in information. There are gray areas and the definitions provided above are general, approximate, and imprecise.

Character set: an inventory of characters with certain assigned values. ASCII is a 7-bit character set that specifies which "character cell" (byte value) corresponds to which informational unit.

Code Page: essentially synonymous with character set.

Font: A collection of glyphs. A specific font may be isomorphic with a specific character set, containing only glyphs corresponding to characters in that set, with these glyphs mapped to the same byte values as the characters they are intended to represent. PostScript fonts often contain additional (unmapped) characters. Most importantly, PostScript fonts may sometimes be remapped by an operating environment, which is what leads to the disorienting cross-environment mismatch that spurred my original posting.

Fonts may be bitmapped or outline in format; a bitmapped format corresponds to a particular size and weight for a particular device or device resolution, while a single outline font is used to generate multiple sizes as needed. Within an outline font system, different weights (bold, semibold, italic, etc.) may be encoded as separate font resources (separate outline files used to generate the glyphs) or may all be generated from a single outline (slanting characters to make "italics," fattening them for "bold," etc.).