完全适用于 12pt

完全适用于 12pt

我正在写一本回忆录,\documentclass[b4paper,14pt,english,twoside]{memoir}并对数学公式如此之小感到非常惊讶。

然后我的目标是增加数学模式字体大小但保持 14pt 文档类。

完全适用于 12pt

我搜索过解决方法,此处有以下 MWE(以及放大的字体大小增加)

在这里我设置了一个 12pt 文档类,并增加了数学模式字体大小\DeclareMathSize

\documentclass[b4paper,12pt,english,twoside]{memoir}
\usepackage[english]{babel}
\usepackage[utf8x]{inputenc} % For French accents
\usepackage[T1]{fontenc}
\usepackage{lmodern, textcomp}




%%%%%%%%%%%%%%%% MATH et TiKZ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\usepackage{amsmath}
\usepackage{amssymb}

\DeclareMathSizes{12}{20}{14}{10}

\begin{document}
test old $\displaystyle \lambda$
    \begin{equation}
        \displaystyle a\ge b_h \iff \sum_{j:a_j\ge b_h^j}
    \end{equation}

\end{document}

这是完全有效的12pt memoir

在此处输入图片描述

14pt 不再有效

尝试将全局字体大小从 12pt 更改为 14pt 并保持增加的数学模式字体大小不再起作用。

\documentclass[b4paper,14pt,english,twoside]{memoir}
\usepackage[english]{babel}
\usepackage[utf8x]{inputenc} % For French accents
\usepackage[T1]{fontenc}
\usepackage{lmodern, textcomp}




%%%%%%%%%%%%%%%% MATH et TiKZ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\usepackage{amsmath}
\usepackage{amssymb}

\DeclareMathSizes{14}{20}{14}{10}

\begin{document}
test old $\displaystyle \lambda$
    \begin{equation}
        \displaystyle a\ge b_h \iff \sum_{j:a_j\ge b_h^j}
    \end{equation}

\end{document}

\DeclareMathSizes不再起作用,切换到14pt文档类:

在此处输入图片描述

何时有效,何时无效

经过其他一些测试后,似乎该命令对于任何nn ptif都有效,而对于任何ifnn <= 12pt都不再有效(这是回忆录类允许的大小之一)。nn ptnn >= 14ptnn

@daleif 进行的另一项测试表明它不起作用,并且extarticle document class也不提供 14pt 和 17t 字体大小。

为什么当超过 14pt 时它不再起作用了,我有什么解决方案可以解决它?

答案1

生活从来都不容易。你需要知道精确的字体大小。 memoir而其他提供14pt大小类选项的类(例如extarticle),实际上并不是使用 14pt 字体大小,而是使用\@xivpt,这实际上是 14.4!!并且17pt17.28

这源于过去必须生成特定大小的字体。如今我们有了可缩放的字体,但事情有点模糊,所以这类事情被忽略了。

您可以使用以下方式检查值

\makeatletter
\typeout{\@xivpt}
\makeatother

然后

\DeclareMathSizes{14.4}....

看起来工作得很好。

也许更好

\makeatletter
\DeclareMathSizes{\@xivpt}....
\makeatother

所使用的宏\@...可以在mem<size>.clomemoir

相关内容