如何在排版表达式(例如 $f\left(\frac{y}{2}\right))时获得适当的间距

如何在排版表达式(例如 $f\left(\frac{y}{2}\right))时获得适当的间距

我正在尝试排版函数 $f$ 的值,其中 $x = \frac{y}{2}$(或其他需要更多垂直空间的值)。为了获得正确大小的括号,我尝试了:

f\left(\frac{y}{2}\right)

这导致间距不好。例如,

\documentclass{article}
\begin{document}
\noindent 
$f\left(\frac{y}{2}\right)$

$f(x)$
\end{document}

给出:

输出

那么正确的排版方法是什么?

答案1

前面的一个评论:自动调整大小的括号并不总是具有印刷正确的大小。

  • 例如,

    \[ \left( \sum_{i=1}^N f_i \right) \]
    

    生成的括号太大,因为它们还包围了求和的极限。写成 会更好\[ \biggl( \sum_{i=1}^N f_i \biggr) \],即手动设置括号的大小。

  • 再举一个例子:打字的目的$f\left(a+b(x)\right)$大概是让外括号排版得比内括号大一点。然而,这失败了,因为左/右括号所包围的内容并不“大”。因此,外括号不会比内括号大。在这种情况下,再次需要使用显式(手动)大小指令:$f\bigl(a+b(x)\bigr)$

这就是说,大多数时候左/右对生成的垂直尺寸在印刷上确实是正确的。但是,正如您所发现的,\left\right指令插入了一些空格,而这些空格也不一定是正确的。

至少有两种补救措施\mleft\mright左右包和\genfrac数学包。其操作如下表所示。

  • \mleft人们注意到和产生的间距\mright几乎与选择手动调整栅栏大小的间距相同(\big在 textstyle-math 的情况下,\Big在 displaystyle-math 的情况下)。

  • 相比之下,由 生成的间距\genfrac要小得多;您可能(也可能不喜欢……)喜欢这种外观。请注意,由 生成的括号的垂直高度\genfrac似乎比最低要求的要大一些。但是,这种结果可能特定于表达式中包含的符号。

\mleft/\mright总之,我认为如果您使用该方法排版分数项周围的自动大小括号,您不会出错。为了节省您输入这些表达式的时间,请考虑创建和使用宏,例如\newcommand{\pfrac}[2]{\mleft(\frac{#1}{#2}\mright)}

在此处输入图片描述

\documentclass{article}
\usepackage{amsmath,mleftright,array}
\newcommand{\tbs}{\textbackslash} % a shorthand macro...
\renewcommand{\arraystretch}{2}
\newcommand{\pfrac}[2]{\mleft(\frac{#1}{#2}\mright)}
\newcommand{\gfrac}[2]{\genfrac{(}{)}{}{}{#1}{#2}}

\begin{document}
\begin{tabular}{>{\ttfamily}l 
                >{$\textstyle}l<{$} 
                >{$\displaystyle}l<{$}}
Method & \text{textstyle} & \text{displaystyle}\\[0.5ex]
\tbs left, \tbs right 
    & f\left(\frac{y}{2}\right)g(z) & f\left(\frac{y}{2}\right)g(z)\\
\tbs mleft, \tbs mright 
    & f\pfrac{y}{2}g(z) & f\pfrac{y}{2}g(z)\\
\tbs [bB]igl, \tbs [bB]igr
    & f\bigl(\frac{y}{2}\bigr)g(z) & f\Bigl(\frac{y}{2}\Bigr)g(z)\\
\tbs genfrac 
    & f\gfrac{y}{2}g(z) & f\gfrac{y}{2}g(z)\\
\end{tabular}
\end{document}

相关内容