有没有一种方便的方法来排版数字的下限或上限,而不需要分别编码左右部分?例如,有没有办法$\ceil{x}$
代替$\lceil x \rceil$
?
答案1
\usepackage{mathtools}
\DeclarePairedDelimiter{\ceil}{\lceil}{\rceil}
该命令\ceil
将执行;如果调用\ceil*{x}
它将添加\left
和\right
;您也可以将其调用为
\ceil[\big]{x} \ceil[\Big]{x} \ceil[\bigg]{x} \ceil[\Bigg]{x}
明确说明定界符的大小。
答案2
这是一个简单的xparse
的实现\ceil
,类似于mathtools
' \DeclarePairedDelimiter
:
\documentclass{article}
\usepackage{xparse}% http://ctan.org/pkg/xparse
\NewDocumentCommand{\ceil}{s O{} m}{%
\IfBooleanTF{#1} % starred
{\left\lceil#3\right\rceil} % \ceil*[..]{..}
{#2\lceil#3#2\rceil} % \ceil[..]{..}
}
\begin{document}
\[\ceil[\big]{x} \quad \ceil[\Big]{x} \quad \ceil[\bigg]{x} \quad \ceil[\Bigg]{x} \quad \ceil*[\big]{\frac{1}{2}}\]
\end{document}
在带星号的版本中,可选参数被忽略\ceil*[..]{..}
。
答案3
您可以使用简单的单行定义您的命令,如下所示:
\newcommand{\ceil}[1]{\lceil {#1} \rceil}
上面的命令定义表明你的命令接受一个输入 [1],并在预定义命令之间使用该输入\lceil
,并\rceil
通过{#1}
希望能帮助到你。