152
LaTeX Font Warning: Font shape `OT1/cmss/m/n' in size <4> not available
LaTeX Font Warning: Size substitutions with differences

I am using the files from http://www.poirrier.be/~jean-etienne/info/latexbeamer/latex-beamer.tar.gz.

Alternatively, for a minimal working example, the presentation

\documentclass{beamer}
\begin{document}

\begin{frame}
\titlepage 
\end{frame}

\end{document} 

produces the warnings.


How to remove the above 2 warnings?

0

4 Answers 4

159

Add

\usepackage{lmodern}

to your document preamble.

Fonts are typically available only in certain sizes/increments. As an example, the basic article document class loads only the following sizes (from size10.clo):

  • \tiny @ 5pt;
  • \scriptsize @ 7pt;
  • \footnotesize @ 8pt;
  • \small @ 9pt;
  • \normalsize @ 10pt;
  • \large @ 12pt;
  • \Large @ 14.4pt;
  • \LARGE @ 17.28pt;
  • \huge @ 20.74pt; and
  • \Huge @ 24.88pt

So, requesting a 15pt font size using something like

\documentclass{article}
\begin{document}
\fontsize{15}{18}\selectfont Hello world.
\end{document}

leads to LaTeX complaining in the .log file:

LaTeX Font Warning: Font shape `OT1/cmr/m/n' in size <15> not available
(Font)              size <14.4> substituted on input line 3.
...
LaTeX Font Warning: Size substitutions with differences
(Font)              up to 0.6pt have occurred.

Using lmodern removes this restriction by allowing font sizes at arbitrary sizes. For more on font size requirements, see Fonts at arbitrary sizes.

8
  • 3
    I know this workaround, but I also know that if you do that, math accents will be typesetted very badly. You can try i.e. $\ddot u$ or $\tilde J$
    – Wauzl
    Oct 17, 2012 at 7:44
  • 2
    I used package lmodernand it worked fine until I used \scshape and no matter the size I still get the same error. Any ideas? Jun 4, 2014 at 14:22
  • 1
    @VagelisBebelis: Where are you using \scshape? Perhaps with a bold or italics font? They don't have small-caps included.
    – Werner
    Jun 4, 2014 at 16:23
  • 4
    @AlexanderGelbukh: That's because lmodern only replaces the Computer Modern font family, not all fonts.
    – Werner
    Aug 7, 2017 at 17:29
  • 2
    @Werner Perhaps you could clarify this in the answer. Aug 12, 2017 at 8:45
42

Add \usepackage{anyfontsize} to your preamble.

3
  • 3
    This is what worked for me. With lmodern suggested in the accepted answer, I stil got the warning LaTeX Font Warning: Font shape 'U/lasy/m/n' in size <13> not available. Aug 7, 2017 at 5:32
  • 4
    This scales all fonts, which is a reasonable fallback; but one should first fix warnings by selecting better fonts (like lmodern) where possible. Aug 29, 2017 at 13:30
  • 1
    Using anyfontsize worked for me when using this thesis template latextemplates.com/template/masters-doctoral-thesis. Using lmodern did nothing (regardless of whether anyfontsize was included or not).
    – amc
    Feb 24, 2022 at 19:23
15

You can add this \let\Tiny=\tiny just after the documentclass declaration. So, it should look something like this:

\documentclass{beamer}
\let\Tiny=\tiny

Hope this helps! :)

Links: [1] http://texblog.net/latex-archive/presentations/beamer-warnings/

2

Beamer versions 3.44 and newer no longer produce this warning.

It was fixed in https://github.com/josephwright/beamer/commit/3bac00a7a4d95067ccb6e6aac0f0be1c9f802a1a

2
  • Nope, installed a new version today (May 20, 2020), and it still has this warning.
    – mathreader
    May 21, 2020 at 6:40
  • 1
    @mathreader Something's fishy. I never had the warning since the update, and I just tested it again (just to be sure).
    – campa
    Aug 13, 2020 at 15:24

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .