重新定义括号数学分隔符

重新定义括号数学分隔符

我正在尝试实现左括号和右括号数学分隔符,这是 LaTeX 的标准分隔符,因为我不太喜欢mathdesign字体的分隔符。是否有一些命令可以\definemathdelimiter重新定义它?

\documentclass[12pt]{article}

\usepackage[charter]{mathdesign}
\usepackage{amsmath}
\usepackage{abraces}

\begin{document}
\begin{equation*}
\phi(z) =
    \left\{\begin{tabular}{cl}
    $ 2\arctan\left(\dfrac{y}{\sqrt{x^2+y^2} + x}\right) $ & if  $ x>0  \text{ or }  y \neq 0 $\\
    $ \pi $ & if  $ x<0\text{ and }  y = 0 $ \\
    Does not exist & if  $ x=0\text{ and } y = 0 $
    \end{tabular}\right.\
\end{equation*}

    \[
    \aunderbrace{\text{The desired delimiter}}
    \]

\end{document}

在此处输入图片描述

答案1

您可以从fontmath.ltx

\documentclass[12pt]{article}

\usepackage[charter]{mathdesign}
\DeclareSymbolFont{cmsymbols}{OMS}{cmsy}{m}{n}%
\SetSymbolFont{cmsymbols}{bold}{OMS}{cmsy}{b}{n}%
\DeclareSymbolFont{cmlargesymbols}{OMX}{cmex}{m}{n}%
\SetSymbolFont{cmlargesymbols}{bold}{OMX}{cmex}{b}{n}%
\DeclareMathDelimiter{\rbrace}
   {\mathclose}{cmsymbols}{"67}{cmlargesymbols}{"09}
\DeclareMathDelimiter{\lbrace}
   {\mathopen}{cmsymbols}{"66}{cmlargesymbols}{"08}

% Charter version, just to show the difference
\DeclareMathDelimiter{\rfoo}
   {\mathclose}{symbols}{"67}{largesymbols}{"09}
\DeclareMathDelimiter{\lfoo}
   {\mathopen}{symbols}{"66}{largesymbols}{"08}

\usepackage{amsmath}
\usepackage{abraces}

\begin{document}
\begin{gather*}
\left\{\Biggl\{\biggl\{\Bigl\{\bigl\{\{\rule{0pt}{5ex}\}\bigr\}\Bigr\}\biggr\}\Biggr\}\right\} \\
\left\lfoo\Biggl\lfoo\biggl\lfoo\Bigl\lfoo\bigl\lfoo\lfoo\rule{0pt}{5ex}\rfoo\bigr\rfoo\Bigr\rfoo\biggr\rfoo\Biggr\rfoo\right\rfoo 
\end{gather*}

\end{document}

在此处输入图片描述

我不推荐这个,原因有二:

  • (客观原因)这样就浪费了两种宝贵的符号字体。
  • (个人意见)字体设计师花了一些时间在他们的工作上。charter括号确实 与字体的其余部分更好地协调。混合使用不同字体的符号很少能改善文档的外观。

相关内容