我正在尝试在小型表格环境中排版标题。
分数符号的水平线受到干扰。我设法用一种粗略的方法修复了它。
有没有更好的解决方案?有没有办法在连续文本中排版方程式样式?
梅威瑟:
\documentclass{article}
\def\eff{\ensuremath{\mathrm{eff}}}
\begin{document}
{\small% I use small for my table
To solve the vertical spacing in\\
$F=\frac{A_\eff}{\overline{|A|}}$\\
I tried\\
$F=\frac{A_\eff\vphantom{_y}}{\overline{|A|}}$\\
to solve the subscript and\\
$F=\frac{A_\eff}{\overline{|A|}\vphantom{~\int}}$\\
to solve the overline giving
$F=\frac{A_\eff\vphantom{_y}}{\overline{|A|}\vphantom{~\int}}$.
Is there a easier way to get it closer to:
\begin{equation}
F=\frac{A_\eff}{\overline{|A|}}?
\end{equation}
}
\end{document}
答案1
你的最后一个等式和它前面的等式之间的主要区别在于,最后一个等式是显示公式,而其他的是内联公式。显示公式以 隐式排版\displaystyle
,而内联公式使用\textstyle
。以显示样式出现的分数的分子和分母以文本样式排版,而以文本样式出现的分数的分子和分母以脚本样式排版(分母样式的狭窄变体:指数不会像非狭窄样式那样升高)。这在 TeXbook 第 140-141 页中有解释。
因此,如果您希望内联方程看起来像最后一个,最简单的方法是\displaystyle
通过在相应数学公式的开头发出此命令来排版它:
\documentclass{article}
\newcommand*{\eff}{\mathrm{eff}}
\begin{document}
{\small
Inline formula using \verb|\displaystyle|:
$\displaystyle F=\frac{A_{\eff}}{\overline{|A|}}$.
Display formula:
\begin{equation}
F=\frac{A_{\eff}}{\overline{|A|}}.
\end{equation}
}
\end{document}
如果您想\displaystyle
一次影响多个内联公式(权衡利弊之后),您可以使用{\everymath{\displaystyle} ... }
中的公式...
。
另一种更本地化的技巧\displaystyle
是使用命令来amsmath
获得分数\dfrac
:
\usepackage{amsmath}
...
$F=\dfrac{A_{\eff}}{\overline{|A|}}$
请注意,我删除了 的使用\ensuremath
,因为它无助于保持源代码整洁,因为源代码总是很清楚是在文本中使用还是在数学模式中使用。此外,使用\frac{A_{\eff}}{...}
比更好\frac{A_\eff}{...}
。根据 的扩展\eff
,我相信后者可能会带来不好的惊喜。
另一种相当不同的格式化分数的方法是在您想要的位置添加垂直空间,但保持分子和分母为脚本样式,即插入支柱以在您想要的位置添加高度或深度。在这里,我使用amsmath
's\smash[t]{...}
来“消除” 的顶部\strut
,并\smash[b]{...}
使用 's 来“消除” 的底部。
\documentclass{article}
\usepackage{amsmath}
\newcommand*{\eff}{\mathrm{eff}}
\begin{document}
{\small
Inline formula using \verb|\textstyle|:
$F=\frac{\smash[t]{\strut} A_{\eff}}{\smash[b]{\strut} \overline{|A|}}$.
Display formula:
\begin{equation}
F=\frac{A_{\eff}}{\overline{|A|}}.
\end{equation}
}
\end{document}