我个人认为 latex 数学模式中方括号的默认大小太小。例如,对于间隔[a,b]
,我更喜欢\big[\big]
而不是普通[]
。我的问题是,我该怎么做才能更改 的默认大小[]
,以便当我[]
在数学模式下输入时,它们会自动显示为与 相同的大小\big[\big]
?
现在我正在定义一个名为 的新命令\b{}
,它接受一个参数并将其插入到\big[
和之间\big]
,但代码看起来很丑陋。显然\newcommand
(或\def
或\let
)不允许[
细化。
任何帮助我都非常感谢。谢谢。
答案1
您可以加载相关字体的缩放版本,并将标准定义替换为[
和]
。下面我选择了超过标准尺寸的缩放比例,1.2
以达到一些夸张的效果,您可能只需要一个因子1.1
\documentclass{article}
\DeclareFontFamily{OT1}{cmrlop}{}
\newcommand{\mybscale}{1.2}
\DeclareFontShape{OT1}{cmrlop}{m}{n}%
{<5><6><7><8><9><10><12>gen*[\mybscale]cmr%
<10.95>*[\mybscale]cmr10%
<14.4>*[\mybscale]cmr12%
<17.28><20.74><24.88>*[\mybscale]cmr17}{}
\DeclareSymbolFont{loperators}{OT1}{cmrlop}{m}{n}
\DeclareMathSymbol{[}{\mathopen}{loperators}{"5B}
\DeclareMathSymbol{]}{\mathclose}{loperators}{"5D}
\DeclareMathDelimiter{[}{\mathopen}{loperators}{"5B}{largesymbols}{"02}
\DeclareMathDelimiter{]}{\mathclose}{loperators}{"5D}{largesymbols}{"03}
\begin{document}
\( [a,b] \)
\begin{displaymath}
\left[a,c\right] \bigl[a,b\bigr] \Bigl[a,b\Bigr] \biggl[a,b\biggr] \Biggl[a,b\Biggr]
\end{displaymath}
\( ([()]) \)
\end{document}
代码会调整括号的正常大小,但不会调整大尺寸版本。您必须对系列应用类似的技术largesymbols
来更改它们。
答案2
您可以定义\[
为\big[
和\]
,\big]
问题是\[\]
已经定义为打开和关闭displaystyle数学模式环境,因此必须取消定义它们。
\documentclass{article}
\makeatletter
\let\[\@undefined
\let\]\@undefined
\makeatother
\def\[{\big[}
\def\]{\big]}
\begin{document}
\begin{equation}
\[a,b\]
\end{equation}
\end{document}
答案3
您可以定义自己的命令(不是\b
因为它已经被定义)来实现您的目标。
\documentclass{article}
\newcommand{\brakets}[1]{\ensuremath{\bigg[#1\bigg]}}
\begin{document}
\noindent
$[31]$ original\\
\brakets{31} something something something...\\
\brakets{xyz} something something something...\\
$\brakets{xyz} + x = \cdots$ in mathmode as well\\
\end{document}