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.

pag Avant Garde
fvs Bitstream Vera Sans
pbk Bookman
bch Charter
ccr Computer Concrete
cmr Computer Modern
cmss Computer Modern Sans Serif
cmtt Computer Modern Typewriter
pcr Courier
phv Helvetica
fi4 Inconsolata
lmr Latin Modern
lmss Latin Modern Sans
lmtt Latin Modern Typewriter
pnc New Century Schoolbook
ppl Palatino
ptm Times
uncl Uncial
put Utopia
pzc Zapf 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:

m Medium (normal)
b Bold
c Condensed
bc Bold condensed
bx Bold extended

The possible values for weight, individually, are:

ul Ultra light
el Extra light
l Light
sl Semi light
m Medium (normal)
sb Semi bold
b Bold
eb Extra bold
ub Ultra bold

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

uc Ultra condensed
ec Extra condensed
c Condensed
sc Semi condensed
m Medium
sx Semi expanded
x Expanded
ex Extra expanded
ux Ultra 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:

n Upright (normal)
it Italic
sl Slanted (oblique)
sc Small caps
ui Upright italics
ol Outline

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; see \baselinestretch, next.


LaTeX multiplies the line spacing by the value of the \baselinestretch parameter; the default factor is 1. A change takes effect when \selectfont (see below) is called. You can make a line skip change happen for the entire document, for instance doubling it, by doing \renewcommand{\baselinestretch}{2.0} in the preamble.

However, the best way to double-space a document is to use the setspace package. In addition to offering a number of spacing options, this package keeps the line spacing single-spaced in places where that is typically desirable, such as footnotes and figure captions. See the package documentation.


Equivalent to \renewcommand{\baselinestretch}{factor}, and therefore must be followed by \selectfont to have any effect. Best specified in the preamble, or use the setspace package, as just described.


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:


© 2007–2018 Karl Berry
Public Domain Software