![重新定义方程式并对齐环境以使用不同的字体大小](https://linux22.com/image/366820/%E9%87%8D%E6%96%B0%E5%AE%9A%E4%B9%89%E6%96%B9%E7%A8%8B%E5%BC%8F%E5%B9%B6%E5%AF%B9%E9%BD%90%E7%8E%AF%E5%A2%83%E4%BB%A5%E4%BD%BF%E7%94%A8%E4%B8%8D%E5%90%8C%E7%9A%84%E5%AD%97%E4%BD%93%E5%A4%A7%E5%B0%8F.png)
如何重新定义equation
和align
环境以使用字体大小9.0pt
?我发现这个很好解决方案(除了应用后开始一个新段落),允许我定义单个equation
或align
环境的字体大小:
\begingroup\makeatletter\def\f@size{9.0}\check@mathfonts
\def\maketag@@@#1{\hbox{\m@th\normalsize\normalfont#1}}
\begin{equation}
...
\end{equation}\endgroup
或者不调整方程数也可以:
\begingroup\makeatletter\def\f@size{9.0}\check@mathfonts
\begin{equation}
...
\end{equation}\endgroup
我喜欢在全球范围内应用它而不使用不同的环境名称。
编辑:一些可编译的示例(尽管我必须使用不同的文档类):
\documentclass[10pt,a4paper]{scrartcl}
\usepackage{amsmath}
\begin{document}
This is some text.
\begingroup\makeatletter\def\f@size{5.0}\check@mathfonts
\def\maketag@@@#1{\hbox{\m@th\normalsize\normalfont#1}}
\begin{equation}
P = NP
\end{equation}\endgroup
\end{document}
答案1
\documentclass{scrartcl}
\usepackage{lmodern,amsmath}
\makeatletter
\def\maketag@@@#1{\hbox{\m@th\normalsize\normalfont#1}}
\let\oldequation\equation
\def\equation{\def\f@size{5.0}\check@mathfonts\oldequation}
\makeatother
\begin{document}
This is some text.
\begin{equation}
P = NP
\end{equation}
\end{document}
答案2
您可以使用 在环境开头添加代码etoolbox
。例如,
\documentclass[10pt,a4paper]{scrartcl}
\usepackage{amsmath,etoolbox}
\AtBeginEnvironment{align}{%
\fontsize{5}{6}%
}
\AtBeginEnvironment{equation}{%
\fontsize{5}{6}%
}
\begin{document}
This is some text.
\begin{equation}
P = NP
\end{equation}
\begin{align}
P = NP
\end{align}
Here is some more text.
\end{document}
请注意,不建议使用硬编码的字体大小。在这种情况下,最好用 来替换\fontsize{5}{6}
,例如\tiny
,这对于以 为默认大小的文档而言是等效的10pt
。这有助于确保一致性并使您的代码更加灵活。