[Tex/LaTex] get a warning about computer modern even though I’m using lmodern

fontskoma-script

I would like to use KOMA script with a fontsize of 13pt (see very much related question here: Koma Script and real 13pt). Consider the following document:

\documentclass[fontsize=13pt,DIV=12]{scrartcl}

\usepackage{lmodern}
\usepackage[T1]{fontenc}

\begin{document}
test
\end{document}

I get the following warnings:

Class scrartcl Warning: Using fallback calculation to setup font sizes
(scrartcl)              for basic size `13pt' on input line 1564.

LaTeX Font Warning: Font shape `OT1/cmr/m/n' in size <13> not available
(Font)              size <12> substituted on input line 1564.

LaTeX Font Warning: Font shape `T1/cmr/m/n' in size <13> not available
(Font)              size <12> substituted on input line 100.

While I absolutely understand the first warning (I'm okay with calculated font sizes) I don't see why LaTeX is complaining about missing font shapes in the computer modern font (I understand cmr stands for computer modern roman?).

I can get rid of the font shape warnings by using \RequirePackage{fix-cm} before the documentclass, but that seems strange to me (I want to use lmodern, not computer modern).

I guess that it is save to ignore the warnings (the PDF does not include cm), but I would still like to understand what's going on. I tried to defer the change in fontsize until after lmodern has been loaded, but it did not help.

[ Related question in german with an answer by Markus Kohm, suggesting to use lmodern: http://www.komascript.de/node/1137 ]

Best Answer

The warning is due to the fact that Computer Modern fonts are only available at “discrete” sizes. The problem is that, apparently, Koma classes process the fontsize option too early, when Computer Modern is still the default font.

You can remove the spurious warning by loading fix-cm before starting:

\RequirePackage{fix-cm}
\documentclass[fontsize=13pt,DIV=12]{scrartcl}

\usepackage[T1]{fontenc}
\usepackage{lmodern}

\begin{document}
test
\end{document}

You'll only get

Class scrartcl Warning: Using fallback calculation to setup font sizes
(scrartcl)              for basic size `13pt' on input line 1564.

that's unavoidable unless you use the silence package to remove it:

\RequirePackage{fix-cm}
\RequirePackage{silence}
\WarningFilter{scrartcl}{Using fallback}

\documentclass[fontsize=13pt,DIV=12]{scrartcl}
\usepackage[T1]{fontenc}
\usepackage{lmodern}


\begin{document}
test
\end{document}

A different strategy would be

\documentclass[DIV=12]{scrartcl}
\usepackage[T1]{fontenc}
\usepackage{lmodern}
\normalfont
\KOMAoption{fontsize=13pt}
\recalctypearea

\begin{document}
test
\end{document}

but I don't recommend it.