18.1.1 Font Organization

A typeface is a collection of characters that share design characteristics; for example, Courier is a common typeface. A font is a collection of characters that have the same typeface and size.

The Windows graphics device interface (GDI) organizes fonts by family; each family consists of fonts that have a common design. Families are distinguished by stroke width and serif characteristics. A stroke is a horizontal or vertical line. A horizontal stroke is called a cross-stroke. The main vertical line in a character is called a stem.

Serifs are short cross-lines drawn at the ends of the main strokes of a letter. Typefaces without serifs are called sans serif typefaces.

Within a font family, fonts are distinguished by stylistic variations that generally involve their weight and slant. Weights are described by adjectives such as “extra light,” “light,” “demi,” “demi bold,” “book,” “bold,” “heavy bold,” “extra bold,” and “black.” The slant of a font is described by “roman,” “italic,” and “oblique.” A roman font is the upright form of the font; an oblique font is slanted; and an italic font is both slanted and relatively cursive. Font families usually do not include both italic and oblique fonts.

GDI uses five family names to categorize typefaces and fonts. A sixth name (FF_DONTCARE) allows an application to use the default font. Following are the font-family names, each described briefly:

Font-family name Description

FF_DECORATIVE Specifies a novelty font. An example is Old English.
FF_DONTCARE Specifies a generic family name. This name is used when information about a font does not exist or does not matter.
FF_MODERN Specifies a font that has a constant stroke width, with or without serifs. Fixed-pitch fonts are usually modern; examples include Pica, Elite, and Courier New.
FF_ROMAN Specifies a font that has a variable stroke width, with serifs. An example is Times New RomanÒ.
FF_SCRIPT Specifies a font that is designed to look like handwriting; examples include Script and Cursive.
FF_SWISS Specifies a font that has a variable stroke width, without serifs. An example is ArialÒ.

GDI family names do not always correspond to traditional typographic categories.