是否有任何与 \mathstrut 相反的命令?

是否有任何与 \mathstrut 相反的命令?

也许我的问题有点荒谬,但我想知道是否有任何命令与之相反\mathstrut?我认为此命令对于减少自动分隔符(如内联)不必要的大小很有用\Set{}

\usepackage{braket}

\begin{document}
some text
$\Set{A\in R| A\in Q}$ %a bit bad delimiter 
\end{document}

\left \right数学公式。

答案1

您可以使用它来隐藏内容的高度和深度。在包中的命令\smash上下文中,您需要分别将其应用于内容的每一半。在您的特定示例中,您将看不到任何差异(使用标准字体),因为括号已经是最小尺寸了。\Setbraket

示例输出

\documentclass{article}

\usepackage{braket}

\begin{document}

$\Set{A\in R|A\in Q}$

$\Set{\smash{A\in R}|\smash{A\in Q}}$

$\Set{A\in R^{2}|A\in Q}$

$\Set{\smash{A\in R^{2}}|\smash{A\in Q}}$

\end{document}

一般来说,最好避免自动调整尺寸,参见使用 \left 和 \right 是否有坏处?mathtools软件包文档提供了一个\Set可以手动调整大小的命令,例如\Set[\bigg],使用自动调整大小的变体\Set*。这是我通常使用的版本:

示例输出

\documentclass{article}

\usepackage{mathtools}

\newcommand{\with}{\SetSymbol[\delimsize]}
\newcommand{\SetSymbol}[1][]{\nonscript\:#1\vert
  \allowbreak\nonscript\:\mathopen{}}
\DeclarePairedDelimiterX{\Set}[1]{\lbrace}{\rbrace}{#1}

\begin{document}

\( \Set{A\in R \with A\in Q} \)

\( \Set{A\in R^{2} \with A\in Q} \)

\( \Set[\big]{A\in R^{2} \with A\in Q} \)

\( \Set*{A\in R^{2} \with A\in Q} \)

\end{document}

在符号中写\with为 而不是。这样做的好处是,如果您以后改变主意,希望将分隔符设为冒号而不是竖线,那么您只需调整(或)的定义即可。|braketbraket\with\SetSymbol

相关内容