Font Selection
Author: Luc Maranget

B.15 | Font Selection

- Changing the Type Style
- Changing the Type Size
- Special Symbols

B.15.1 | Changing the Type Style

All LATEX 2e declarations and environments for changing type style are recognized. Aspect is rather like LATEX 2e output, but there is no guarantee.
As HTML does not provide the same variety of type styles as LATEX, some type style get rendered by using colors. For instance, the slanted shape yields maroon italics and small caps yields navy blue. Hence, the following source ```{\slshape slanted shape} {\scshape small caps shape}`'' yields: ``slanted shape small caps shape'' Here is how HEVEA implements text-style declarations by default:

`\itshape` |  | italics
`\slshape` |  | maroon italics
`\scshape` |  | navy blue
`\upshape` |  | no style
`\ttfamily` |  | `typewriter font`
`\sffamily` |  | purple
`\rmfamily` |  | no style
`\bfseries` |  | bold
`\mdseries` |  | no style

Text-style commands also exists, they are defined as `\mbox{\`decl...`}`. For instance, `\texttt` is defined as a command with one argument whose body is `\mbox{\ttfamily#1}`. Finally, the `\emph` command for emphasized text also exists.
As in LATEX, type styles consists in three components: shape, series and family. However this distinction does not exist in HTML: one specifies a type style and that's all. HEVEA implements the three components by making one declaration to cancel the effect of other declarations of the same kind. For instance consider the following source, that exhibits shape changes:

    {\itshape italic shape \slshape slanted shape
    \scshape small caps shape \upshape upright shape}

Then, in the rendering below, ``small caps shape'' apears in navy blue only and not in italics:

> italic shape slanted shape small caps shape upright shape

Old style declarations are also recognized, they translate to text-level elements. However, no elements are canceled when using old style declaration. Thus, the source ```{\sl\sc slanted and small caps}`'' yields navy blue italics: ``slanted and small caps''. Users need probably not worry about this. However this has an important practical consequence: to change the default rendering of type styles, one should redefine old style declaration in order to benefit from the cancelation mechanism. See section 9.2 for a more thorough description.

B.15.2 | Changing the Type Size

All declarations, from `\tiny` to `\Huge` are recognized. Output is not satisfactory inside headers elements generated by sectioning commands.

B.15.3 | Special Symbols

The `\symbol{`num`}` outputs character number num from the iso-latin1 character set. This departs from LATEX, which output symbol number num in the current font.