我想要一个非常小的下支架

我想要一个非常小的下支架

这个问题与以下问题相关,但又不同:\underbrace 标签过大会导致不必要的间距

我的问题不是标签的间距,而是下支架本身的尺寸。以该页面上接受的答案为参考,我不喜欢(?)其下方的括号造成的周围空间。我希望括号的左右垂直限制位于在下面括号内,而不是括号周围。

也就是说,该答案中的括号可以粗略地勾勒为

 (?)
\---/

但我反而想

(?)
\-/

(就目前我实际上感到沮丧的情况而言,对象是du而不是(?),但我认为应该适用相同的推理。)

谢谢!

答案1

即使在破坏标签宽度(链接问题中提到的常见罪魁祸首)之后,括号也不能再缩小,因为它是 Computer Modern 中提供的最小尺寸。

一些字体/符号包定义了较小的花括号。我能想到的唯一一个是MnSymbol,但不幸的是,它有几个不兼容性。

适用于任何字体包的替代方法是定义一个\smallunderbrace使用最小字体\tiny来创建括号的新命令:

\def\smallunderbrace#1{\mathop{\vtop{\m@th\ialign{##\crcr
   $\hfil\displaystyle{#1}\hfil$\crcr
   \noalign{\kern3\p@\nointerlineskip}%
   \tiny\upbracefill\crcr\noalign{\kern3\p@}}}}\limits}

此命令与基本 LaTeX 中的命令相同,\underbrace只是\tiny在最后一行插入了命令。结果如下:

在此处输入图片描述

\documentclass{article}
\usepackage{amsmath}
\makeatletter
\def\smallunderbrace#1{\mathop{\vtop{\m@th\ialign{##\crcr
   $\hfil\displaystyle{#1}\hfil$\crcr
   \noalign{\kern3\p@\nointerlineskip}%
   \tiny\upbracefill\crcr\noalign{\kern3\p@}}}}\limits}
\makeatother

\begin{document}
\begin{gather}
  (du) \\
  (\smallunderbrace{du}_{\text{\clap{label}}}) \\
  (\smallunderbrace{\text{test}}_{\text{\clap{label}}})
\end{gather}
\end{document}

最后一条测试行只是为了表明这个新命令仍然是可扩展的,但是\smallunderbrace只有当标准\underbrace太大时才应该使用该命令。

答案2

下支撑有一个最小尺寸,并且与此无关,除非使用不同的策略:

  1. 在我看来,TikZ 支架装饰非常糟糕
  2. 下括号代替下括号

然而,最好的策略是使用下牙套很稀少场合。

如果您希望下划线更细更短,您可以利用定义amsmath数学扩展字体的较小尺寸这一事实(我从来不明白为什么 Knuth 不提供 cmex5 和 cmex7)。

\documentclass{article}
\usepackage{amsmath}
\usepackage{etoolbox}

\makeatletter
\patchcmd{\upbracefill}{\m@th}{\scriptstyle\m@th}{}{}
\patchcmd{\upbracefill}{$\braceld$}{$\scriptstyle\braceld$}{}{}
\patchcmd{\upbracefill}{\bracelu}{\bracelu\mkern-1mu}{}{}
\patchcmd{\upbracefill}{\hfill\braceru}{\hfill\mkern-1mu\braceru}{}{}
\makeatother

\begin{document}
\begin{gather*}
\underbrace{du}_{\text{label}}\\
\underbrace{} \\ % minimum size
\underbrace{loooooooooooong}
\end{gather*}
\end{document}

正如您在图片中看到的,最小尺寸比标准尺寸小很多,并且下支撑也较小。

在此处输入图片描述

答案3

你想要这样的吗?

在此处输入图片描述

\documentclass{article}

\usepackage{mathtools}

\begin{document}

\[
    \left( x-1 \right) (\underbrace{\text{du}}_{ \mathclap{\text{what is this?}} })
\]

\end{document}

相关内容