4.4 Low-level font commands

These commands are primarily intended for writers of macros and packages. The commands listed here are only a subset of the available ones.


Select the font encoding, the encoding of the output font. There are a large number of valid encodings. The most common are OT1, Knuth’s original encoding for Computer Modern (the default), and T1, also known as the Cork encoding, which has support for the accented characters used by the most widespread European languages (German, French, Italian, Polish and others), which allows TeX to hyphenate words containing accented letters. For more, see https://ctan.org/pkg/encguide.


Select the font family. The web page https://tug.org/FontCatalogue/ provides one way to browse through many of the fonts easily used with LaTeX. Here are examples of some common families.

pagAvant Garde
fvsBitstream Vera Sans
ccrComputer Concrete
cmrComputer Modern
cmssComputer Modern Sans Serif
cmttComputer Modern Typewriter
lmrLatin Modern
lmssLatin Modern Sans
lmttLatin Modern Typewriter
pncNew Century Schoolbook
pzcZapf Chancery

Select the font series. A series combines a weight and a width. Typically, a font supports only a few of the possible combinations. Some common combined series values include:

mMedium (normal)
bcBold condensed
bxBold extended

The possible values for weight, individually, are:

ulUltra light
elExtra light
slSemi light
mMedium (normal)
sbSemi bold
ebExtra bold
ubUltra bold

The possible values for width, individually, are (the meaning and relationship of these terms varies with individual typefaces):

ucUltra condensed
ecExtra condensed
scSemi condensed
sxSemi expanded
exExtra expanded
uxUltra expanded

When forming the series string from the weight and width, drop the m that stands for medium weight or medium width, unless both weight and width are m, in which case use just one (‘m’).


Select font shape. Valid shapes are:

nUpright (normal)
slSlanted (oblique)
scSmall caps
uiUpright italics

The two last shapes are not available for most font families, and small caps are often missing as well.


Set the font size and the line spacing. The unit of both parameters defaults to points (pt). The line spacing is the nominal vertical space between lines, baseline to baseline. It is stored in the parameter \baselineskip. The default \baselineskip for the Computer Modern typeface is 1.2 times the \fontsize. Changing \baselineskip directly is inadvisable since its value is reset every time a size change happens; instead use \baselinestretch. (see \baselineskip & \baselinestretch).


Equivalent to \renewcommand{\baselinestretch}{factor}, and therefore must be followed by \selectfont to have any effect. Best specified in the preamble. See \baselineskip & \baselinestretch, for using setspace package instead.


The effects of the font commands described above do not happen until \selectfont is called, as in \fontfamily{familyname}\selectfont. It is often useful to put this in a macro:
(see \newcommand & \renewcommand).


The same as invoking \fontencoding, \fontfamily, \fontseries and \fontshape with the given parameters, followed by \selectfont. For example:


Unofficial LaTeX2e reference manual