Проблема со lm
шрифтами. При некоторых размерах разделители и большие операции (знак суммы и т. д.) не масштабируются вместе с размером шрифта. Пакет fixcmex
исправляет это. (Надеюсь, проблема будет исправлена в исходных шрифтах в конце концов?).
Шрифты mlmodern
представляют собой более темную версию lm
. СмотретьБолее толстый компьютер Современныйдля мотивации этого более темного шрифта. mlmodern
по-видимому, напрямую зависит от lm
того, что он должен lm
быть установлен для работы.
Поэтому возникает вопрос: будет ли исправление, lm
предоставленное пользователем, fixcmex
также исправлением mlmodern
?
решение1
Проблема не в шрифтах как таковых, а только в объявлении совместимости с устаревшими версиями в настройках математики по умолчанию. Он просто изменяет объявления cmex
и, lmex
если посмотреть на omxmlex.fd
это, то это принесет пользу (или лучше предложить сопровождающему mlmodern
предложить это как вариант)
В отличие от шрифта расширения cm, он, по-видимому, доступен только в одном размере, поэтому эквивалентное объявление будет выглядеть так:
\DeclareFontFamily{OMX}{mlmex}{}
\DeclareFontShape{OMX}{mlmex}{m}{n}{%
<-> mlmex10%
}{}
Или вы могли бы использовать шрифт cm меньших размеров, что было бы
\DeclareFontFamily{OMX}{mlmex}{}
\DeclareFontShape{OMX}{mlmex}{m}{n}{%
<-7.5> cmex7
<7.5-8.5> cmex8
<8.5-9.5> cmex9
<9.5-> mlmex10
}{}%
оригинальный
версия 1
версия 2
\documentclass{article}
\usepackage{mlmodern}
\makeatletter
\def\fixcmex@fix{%
%\DeclareFontShape{OMX}{mlmex}{m}{n}{%
% <-> mlmex10%
%}{}
%
\DeclareFontShape{OMX}{mlmex}{m}{n}{%
<-7.5> cmex7
<7.5-8.5> cmex8
<8.5-9.5> cmex9
<9.5-> mlmex10
}{}%
%
\SetSymbolFont{largesymbols}{normal}{OMX}{mlmex}{m}{n}%
\SetSymbolFont{largesymbols}{bold}{OMX}{mlmex}{m}{n}%
}
\AtBeginDocument{%
\begingroup
\check@mathfonts
\expandafter\expandafter\expandafter
\split@name\expandafter\string\the\textfont\thr@@\@nil
\aftergroup\fixcmex@fix
\endgroup
}
\makeatother
\begin{document}
{\footnotesize $(x) + \left(\frac{a}{b}\right)$}
}
\bigskip
{\normalsize $(x) + \left(\frac{a}{b}\right)$}
\bigskip
{\LARGE $(x) + \left(\frac{a}{b}\right)$}
\end{document}