自定义右方括号

自定义右方括号

对不起,我的英语不好。

我的文件使用了 fouriernc 字体。但是右括号不太美观。

我发现一个代码可以很好地自定义右括号,但是如果旁边有文本,它们就会像这样堆叠在一起。在此处输入图片描述

请帮我修复代码以避免该问题。非常感谢!

\documentclass{article} % https://tex.stackexchange.com/a/327584/121799
\usepackage{tikz,amsmath,environ,fourier}
\usetikzlibrary{decorations.pathreplacing,calc}
\tikzset{
    ncbar angle/.initial=90,
    ncbar/.style={
        to path=(\tikztostart)
        -- ($(\tikztostart)!#1!\pgfkeysvalueof{/tikz/ncbar angle}:(\tikztotarget)$)
        -- ($(\tikztotarget)!($(\tikztostart)!#1!\pgfkeysvalueof{/tikz/ncbar angle}:(\tikztotarget)$)!\pgfkeysvalueof{/tikz/ncbar angle}:(\tikztostart)$)
        -- (\tikztotarget)
    },
    ncbar/.default=0.5cm
}
%
\tikzset{square left brace/.style={ncbar=1ex}}
\tikzset{square right brace/.style={ncbar=-1ex}}
%
\NewEnviron{rcases}{\setbox0=\hbox{$\,\begin{matrix}\BODY\end{matrix}\,$}%
    \setbox2=\hbox{\begin{tikzpicture}
            \draw  (0,\botdim) to [square left brace] (0,\topdim);
            \copy0
    \end{tikzpicture}}
    \vcenter{\hbox{\copy2}}%
}


\def\topdim{\the\dimexpr+\ht0+.5\ht\strutbox-.5\dp\strutbox-3pt\relax}
\def\botdim{\the\dimexpr-\ht0+.5\ht\strutbox-.5\dp\strutbox+3pt\relax}
\begin{document}
\[ \left[\begin{matrix}
    0 & \text{if}~x<0\\
    1 & \text{if}~x\ge0
\end{matrix} \right.
\]
\[ 
    f(x)=
    \begin{rcases}
        0 & \text{if}~x<0  \\ 
        1 & \text{if}~x\ge0 
    \end{rcases} x+y=0
\]
\end{document}

答案1

使用 Ti这里的 Z 对我来说似乎有点过度了。

\documentclass{article}
\usepackage{amsmath,fourier}

\newenvironment{bcases}{%
   \vcenter\bgroup
   \vbox\bgroup
   \hrule width1ex % <-- choose your desired size
   \hbox\bgroup
   \vrule
   \hbox\bgroup
   $\mathsurround0pt\def\arraystretch{1.2}\array{@{\kern.5em}l@{\quad}l@{}}%
  }{%                                 ^^^           ^^^^^^^^
   \endarray$ %                        or whatever you like
   \egroup
   \egroup
   \hrule width1ex
   \egroup
   \egroup
}

\begin{document}

\begin{gather*}
f(x)=\begin{cases}
        0 & \text{if $x<0$}  \\ 
        1 & \text{if $x\ge0$} 
     \end{cases}
    x+y=0
\\
f(x)=\begin{bcases}
        0 & \text{if $x<0$}  \\ 
        1 & \text{if $x\ge0$} 
     \end{bcases} x+y=0
\end{gather*}

\end{document}

在此处输入图片描述

(我称之为环境bcases而不是rcases因为后者是由mathtools包提供的。)

相关内容