\documentclass[12pt,a4paper]{report}
\usepackage{palatino}
\begin{document}
\begin{equation}\label{good}
\int_{0}^{1}
\end{equation}
\begin{equation}\label{ugly}
\begin{array}{c}
\int_{0}^{1}\\
\int_{0}^{1}\\
\end{array}
\end{equation}
\end{document}
正如标签所示,我的问题是,这两个看似相同的积分符号用法分别编译得很好和不太好。第一个产生了一个漂亮的两行高的积分符号,第二个产生了两个烦人的一行高的小积分(即使我在数组中添加了空行)。
有没有真实的这个问题的解决方案?任何帮助非常感谢 :) P
答案1
首先,加载包palatino
只会在文本模式下提供“Palatino”字体,在数学模式下则不会。要在文本和数学模式下都获得“Palatino”和数学模式,加载一个包,例如mathpazo
或——假设您有一个相当最新的 TeX 发行版——包newpxtext
和newpxmath
。
其次,你得到的是小的,即内联样式的积分符号,因为array
默认情况下,环境中的行是以内联样式数学模式而不是显示样式数学模式排版的。如果出于某种原因,你必须使用array
环境,您可以通过将指令添加\displaystyle
到前面来获得更大的积分符号\int
,如下例中等式 (2) 左侧所做的那样。您可能还应该增加行之间的间隔,例如,在 的第一行末尾添加 [2ex] array
。
对于手头的示例,使用gathered
环境而不是array
环境有两个很大的优势:(i) 行将自动以 displaymath 样式排版,以及 (ii) 您无需手动提供额外的行垂直分隔。以这种方式使用gathered
而不是的结果array
显示在下面的等式 (2) 的右侧。
有关以内联数学样式或显示数学样式显示运算符号(如\int
and )的更多信息\sum
,请参阅帖子显示内联数学,就像显示数学一样以及相关答案。
\documentclass[12pt,a4paper]{report}
\usepackage{newpxtext,newpxmath}
\setlength\textwidth{2in} % just for this example
\begin{document}
\begin{equation}\label{good}
\int_{0}^{1}
\end{equation}
\begin{equation}\label{nolongerugly}
\begin{array}{c}
\displaystyle\int_{0}^{1} \\[2ex] % provide some extra vertical separation
\displaystyle\int_{0}^{1}
\end{array}
\quad\text{vs.}\quad
\begin{gathered}
\int_{0}^{1} \\ % no need to provide extra vertical separation
\int_{0}^{1}
\end{gathered}
\end{equation}
\end{document}
答案2
如果您既不想将所有\int
积分符号更改为,\displaystyle\int
也不想使用amsmath
包,则以下解决方案应该有效:
\documentclass[12pt,a4paper]{report}
\usepackage{palatino}
\begin{document}
\let\normalint\int % PS
\def\int{\displaystyle\normalint} %PS
\begin{equation}\label{good}
\int_{0}^{1}
\end{equation}
\begin{equation}\label{ugly}
\begin{array}{c}
\int_{0}^{1}\\
\int_{0}^{1}\\
\end{array}
\end{equation}
And if you want small integral sign:
$\int$, $\normalint$.
\end{document}