¿Por qué recibo una advertencia sobre Computer Modern aunque estoy usando lmodern?

¿Por qué recibo una advertencia sobre Computer Modern aunque estoy usando lmodern?

Me gustaría utilizar el script KOMA con un tamaño de fuente de 13 puntos (consulte una pregunta muy relacionada aquí:Guión Koma y real 13pt.). Considere el siguiente documento:

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

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

\begin{document}
test
\end{document}

Recibo las siguientes advertencias:

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.

Si bien entiendo absolutamente la primera advertencia (estoy de acuerdo con los tamaños de fuente calculados), no veo por qué LaTeX se queja de que faltan formas de fuente en la fuente moderna de computadora (¿entiendo que cmrsignifica computadora moderna romana?).

Puedo deshacerme de las advertencias sobre la forma de la fuente utilizándolas \RequirePackage{fix-cm}antes de la clase de documento, pero eso me parece extraño (quiero usar lmodern, no computer modern).

Supongo que es seguro ignorar las advertencias (el PDF no incluye cm), pero aún así me gustaría entender qué está pasando. Intenté posponer el cambio en el tamaño de fuente hasta que lmodernse haya cargado, pero no sirvió de nada.

[Pregunta relacionada en alemán con respuesta de Markus Kohm, que sugiere utilizar lmodern:http://www.komascript.de/node/1137]

Respuesta1

La advertencia se debe al hecho de que las fuentes Computer Modern solo están disponibles en tamaños "discretos". El problema es que, aparentemente, las clases de Koma procesan la fontsizeopción demasiado pronto, cuando Computer Modern sigue siendo la fuente predeterminada.

Puede eliminar la advertencia falsa cargando fix-cmantes de comenzar:

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

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

\begin{document}
test
\end{document}

Sólo obtendrás

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

eso es inevitable a menos que uses el silencepaquete para eliminarlo:

\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}

Una estrategia diferente sería

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

\begin{document}
test
\end{document}

pero no lo recomiendo.

Respuesta2

Si modifica su ejemplo a

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

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


\begin{document}

test
\end{document}

Verá que la advertencia cmrviene antes de lmodernque se cargue. Entonces, la clase configura algunas fuentes que se anulan más adelante pero aún generan algunas advertencias.

Probablemente sea seguro hacer esto (aunque no creo haberlo probado antes :-)

No recibes advertencias de

\renewcommand\familydefault{lmr}
\renewcommand\encodingdefault{T1}
\selectfont
\DeclareErrorFont{T1}{lmr}{m}{n}{10}
\documentclass[fontsize=13pt,DIV=12]{scrartcl}


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


\begin{document}

test
\end{document}

información relacionada