将分数分子或分母放在左边或右边

将分数分子或分母放在左边或右边

我有一个分数,分子和分母中都有其他分数。我希望用括号将分子和分母中的分数标记在右侧。我希望这些括号跨越分数的整个高度,但我不希望它们进一步延长分数线。

我尝试过\frac{a}{\left.\frac{b}{c}\right}}实现前者但未能实现后者,我也尝试过\frac{a}{\frac{b}{c}\mathrlap{\}}}实现后者但未能实现前者,因为我不能将一半放在\left \right里面\mathrlap,而将另一半放在外面。

答案1

\mathrlap也许您正在寻找的是和的组合,这就是和宏\smash中包含的内容。\BraceRight\BraceLeft

在此处输入图片描述

但是,正如 HendrikVogt 指出的那样,如果后面有文本,则需要在后面手动添加空格。为了缓解这个问题,我又定义了两个宏\FracBraceBottomRight\FracBraceBottomLeft它们也在\hptantom分数之后或之前添加适当的空格。

在此处输入图片描述

这样做的一个缺点是,如果您需要更多选项(例如分子两侧的可选括号),则需要不同的宏。可以使用更好的界面来启用/禁用适当的括号,但这可以通过更好的用户界面来解决,但我认为这更多的是一个提出更好的用户界面的问题。

参考:

代码:

\documentclass{article}
\usepackage{mathtools}

\newcommand*{\BraceRight}[1]{#1\mathrlap{\smash{\left.\vphantom{#1}\right\}}}}%
\newcommand*{\BraceLeft}[1]{\mathllap{\smash{\left\{\vphantom{#1}\right.}}#1}%

% https://tex.stackexchange.com/questions/54023/how-to-compute-exact-width-added-by-left-right
\newcommand{\BracKern}{\kern-\nulldelimiterspace}
\newcommand*{\FracBraceBottomRight}[2]{%
    \frac{#1}{#2\mathrlap{\smash{\left.\BracKern\vphantom{#2}\right\}}}}%
    \hphantom{\left.\vphantom{#2}\right\}}%
}%
\newcommand*{\FracBraceBottomLeft}[2]{%
    \hphantom{\left\{\vphantom{#2}\right.\BracKern}%
    \frac{#1}{\mathllap{\smash{\left\{\vphantom{#2}\right.}}#2}%
}%

\begin{document}
Requires manual spacing:

$\frac{a}{\frac{b}{c}}$\quad%
$\frac{a}{\BraceLeft{\frac{b}{c}}}$\quad%
$\frac{a}{\BraceRight{\frac{b}{c}}}$

\bigskip
Auto spacing with \verb|\hphantom|:

$\FracBraceBottomRight{a}{\frac{b}{c}}$%
$\FracBraceBottomRight{a}{\frac{b}{c}}$%
$\FracBraceBottomLeft{a}{\frac{b}{c}}$%
$\FracBraceBottomLeft{a}{\frac{b}{c}}$
\end{document}

相关内容