在里面mathtools 文档,第 27 页,定义了一个命令\Set*
(连同\Set
)来根据里面的大输入进行拉伸:
\providecommand\given{}
\newcommand\SetSymbol[1][]{
\nonscript\:#1\vert
\allowbreak
\nonscript\:
\mathopen{}}
\DeclarePairedDelimiterX\Set[1]\{\}{
\renewcommand\given{\SetSymbol[\delimsize]}
#1
}
例如,使用上述命令,以下内容
\documentclass{article}
\usepackage{mathtools}
\begin{document}
\[
\Set{(2,\pm 1)} \cup \Set*{\left (\frac{2t^2 - 2t + 2}{t^2 + 1},\, \frac{1-t^2}{t+1}\right ) \given t \neq -1 }
\]
\end{document}
现在,我非常喜欢自动缩放选项。但是,在我以前的\Set
命令中,我总是在参数周围添加一些空格:
\newcommand{\Set}[1]{\{\, #1 \,\}}
这产生了类似
在这种情况下,在 左侧的集合中特别容易看到额外的间距\cup
。
有人知道如何将这种间距行为添加到 mathtools 定义 set 命令的方法中吗?或者甚至创建完全不同的东西,但同时实现缩放和间距?
答案1
只需添加细小的空间:
\documentclass{article}
\usepackage{mathtools}
\providecommand\given{}
\newcommand\SetSymbol[1][]{%
\nonscript\:#1\vert
\allowbreak
\nonscript\:%
\mathopen{}%
}
\DeclarePairedDelimiterX\Set[1]\{\}{%
\renewcommand\given{\SetSymbol[\delimsize]}%
\,#1\,% <--- thin spaces around the part in braces
}
\begin{document}
\[
\Set{(2,\pm 1)} \cup
\Set*{\left (\frac{2t^2 - 2t + 2}{t^2 + 1},\, \frac{1-t^2}{t+1}\right )
\given t \neq -1 }
\]
\end{document}