# LaTeX/Fonts & Font families
> [Original text](https://en.wikibooks.org/wiki/LaTeX/Fonts) includes more information and commands which unsupported in most TeX renderers developed for math notions, so I removed them from this text.
There are hundreds - if not thousands - of [typefaces](https://en.wikipedia.org/wiki/Typeface "w:Typeface"), or font families. Common examples include [Times](https://en.wikipedia.org/wiki/Times_New_Roman "w:Times New Roman"), [Courier](https://en.wikipedia.org/wiki/Courier_(typeface) "w:Courier (typeface)"), and [Helvetica](https://en.wikipedia.org/wiki/Helvetica "w:Helvetica"). These families can generally be grouped into three main categories: [serif](https://en.wikipedia.org/wiki/Serif "w:Serif"), [sans serif](https://en.wikipedia.org/wiki/sans-serif "w:sans-serif"), and [monospaced](https://en.wikipedia.org/wiki/Monospaced_font "w:Monospaced font"). LaTeX commands generally refer to these with the shorthand **rm**, **sf**, and **tt** respectively.
By default, LaTeX uses [Computer Modern](https://en.wikipedia.org/wiki/Computer_Modern "w:Computer Modern"), a family of typefaces designed by Donald Knuth for use with TeX. It contains serif, sans serif, and monospaced fonts, each available in several [weights](https://en.wikipedia.org/wiki/Font#Weight "w:Font") and [optical sizes](https://en.wikipedia.org/wiki/Font#Optical_size "w:Font").
## Font styles
Typefaces usually come in various styles and weights, such as _italic_ and **bold**. The following table lists the commands you will need to access typical font shapes.
| LaTeX command | Equivalent switch | Output style | Remarks |
| --- | --- | --- | --- |
| `\textnormal{...}` | `{\normalfont ...}` | $\text{document font family}$ | This is the default or normal font. |
| `\textrm{...}` | `{\rmfamily ...}` | $\textrm{roman font family}$ |
| `\textsf{...}` | `{\sffamily ...}` | $\textsf{sans serif font family}$ |
| `\texttt{...}` | `{\ttfamily ...}` | $\texttt{teletypefont family}$ | This is a fixed-width or monospace font. |
| `\textit{...}` | `{\itshape ...}` | $\textit{italic shape}$ |
| `\textbf{...}` | `{\bfseries ...}` | $\textbf{bold}$ |
Generally, one should prefer the commands over their equivalent switches because the former automatically corrects spacing immediately following the end of the selected style.
You may have noticed the absence of underline - this is because underlining is a byproduct of the typewriter era, and is not recommended when bold and italic type is available instead. However, underlining can be useful in some cases, such as to draw attention to changes during editing. Although underlining is available via the `\underline{...}` command, text underlined in this way will not break properly.
## Sizing text
### Built-in sizes
To scale text relative to the default body text size, use the following commands:
| Command | Output |
| --- | --- |
| `\tiny` | $\tiny{sample text}$ |
| `\scriptsize` | $\scriptsize{sample text}$ |
| `\small` | $\small{sample text}$ |
| `\normalsize` | $\normalsize{sample text}$ |
| `\large` | $\large{sample text}$ |
| `\Large` | $\Large{sample text}$ |
| `\LARGE` | $\LARGE{sample text}$ |
| `\huge` | $\huge{sample text}$ |
| `\Huge` | $\Huge{sample text}$ |
These commands change the size within a given scope. For instance `\Large{some words}` will change the size of only `some words`, and does not affect the font in the rest of the document. It will work for most parts of the text.
By default, `\normalsize` is 10 points. Note that not every document class has unique sizes for all of the above size commands.
<table>
<caption>Absolute Point Sizes</caption>
<tr>
<th rowspan="2">size</th>
<th colspan="3">standard classes (except <i>slides</i>), beamer</th>
<th colspan="3">AMS classes, <i>memoir</i></th>
<th rowspan="2"><i>slides</i></th>
</tr>
<tr>
<th>[10pt]</th>
<th>[11pt]</th>
<th>[12pt]</th>
<th>[10pt]</th>
<th>[11pt]</th>
<th>[12pt]
</th></tr>
<tr>
<td><tt>\tiny</tt></td>
<td>5</td>
<td>6</td>
<td>6</td>
<td>6</td>
<td>7</td>
<td>8</td>
<td>13.82</td>
</tr>
<tr>
<td><tt>\scriptsize</tt></td>
<td>7</td>
<td>8</td>
<td>8</td>
<td>7</td>
<td>8</td>
<td>9</td>
<td>16.59</td>
</tr>
<tr>
<td><tt>\small</tt></td>
<td>9</td>
<td>10</td>
<td>10.95</td>
<td>9</td>
<td>10</td>
<td>10.95</td>
<td>16.59</td>
</tr>
<tr>
<td><tt>\normalsize</tt></td>
<td>10</td>
<td>10.95</td>
<td>12</td>
<td>10</td>
<td>10.95</td>
<td>12</td>
<td>19.907</td>
</tr>
<tr>
<td><tt>\large</tt></td>
<td>12</td>
<td>12</td>
<td>14.4</td>
<td>10.95</td>
<td>12</td>
<td>14.4</td>
<td>23.89</td>
</tr>
<tr>
<td><tt>\Large</tt></td>
<td>14.4</td>
<td>14.4</td>
<td>17.28</td>
<td>12</td>
<td>14.4</td>
<td>17.28</td>
<td>28.66</td>
</tr>
<tr>
<td><tt>\LARGE</tt></td>
<td>17.28</td>
<td>17.28</td>
<td>20.74</td>
<td>14.4</td>
<td>17.28</td>
<td>20.74</td>
<td>34.4</td>
</tr>
<tr>
<td><tt>\huge</tt></td>
<td>20.74</td>
<td>20.74</td>
<td>24.88</td>
<td>17.28</td>
<td>20.74</td>
<td>24.88</td>
<td>41.28</td>
</tr>
<tr>
<td><tt>\Huge</tt></td>
<td>24.88</td>
<td>24.88</td>
<td>24.88</td>
<td>20.74</td>
<td>24.88</td>
<td>24.88</td>
<td>41.28</td>
</tr>
</table>
Points in TeX follow the standard American point system in which 1 pt is approximately 0.35136 mm. The standard point size used in most modern computer programs (known as the _desktop publishing point_ or _PostScript point_) has 1 pt equal to approximately 0.3527 mm while the standard European point size (known as the _Didot point_) had 1 pt equal to approximately 0.37597151 mm.
### Arbitrary sizes
The `\tiny`...`\Huge` commands are often enough for your needs, but you may occasionally want an arbitrary font size.This is done with `\fontsize{<size>}{<line space>}\selectfont`. For example:
`\\fontsize{5cm}{5.5cm}\\selectfont`
sets the current font size to 5cm with 5.5 centimeter leading.
If you are using the latex or pdflatex engines, you may get a warning similar to the following:
```
LaTeX Font Warning: Font shape `OT1/cmr/m/n' in size <142.26378> not available
(Font) size <24.88> substituted on input line 103.
```
This is because these older engines only support a fixed set of sizes - between 5 and 17 point. When he designed Computer Modern, Knuth created individual font files for these sizes, each with stroke widths and spacing optimized for that particular size. To avoid distorting them, scaling these fonts is disabled by default.
This issue is avoided when using lualatex or xelatex, which use Latin Modern \- a vectorized version of Computer Modern - as the default font family. This still provides individual files at each of the original optical sizes, but will automatically scale the closest one when asked for an arbitrary size.