对齐方程式(包括“case”)

对齐方程式(包括“case”)

我想要一系列aligned方程,其中最后一个方程有两种情况。请参阅图中的示例。

在此处输入图片描述

\documentclass{article}
\usepackage{amsmath}
\begin{document}
\begin{align*}
    a &= b \\
&\begin{cases}
    \ge c \\
    \le d
\end{cases}
\end{align*}
\end{document}

当然,我希望=/ /符号对齐。

这个问题在我的工作中经常出现。我总是不得不想出一些相当不靠谱、不通用的方法\mathllap{\Bigg\{}。但是,每次都这样做是相当不令人满意的——而且这种做法在很多情况下都行不通——所以我想知道是否有更好、更直接的方法?

答案1

您可以使用nicematrix如下所示的包https://tex.stackexchange.com/a/583373/36296

\documentclass{article}
\usepackage{nicematrix}
\begin{document}

\[
\begin{NiceArray}{r@{\;}l}[first-row]
a&= b \\ 
&\ge c\\
&\le d
\CodeAfter \SubMatrix{\{}{1-2}{2-2}{.}[left-xshift=0.1em]
\end{NiceArray}
\]

\end{document}

在此处输入图片描述

答案2

改编

  • 在环境前插入一个负空格cases\hspace{-.73em}
  • 使用相对大小em,因此它也能正常工作(不是完美,因为有一点不同huge),也适用于其他字体大小
  • alignedcases为此定义了一个环境。这样就更容易输入了,如果你找到了更好的解决方案,你可以稍后更改它。
\newenvironment{alignedcases}{
    \hspace{-.73em}
    \begin{cases}
}{
    \end{cases}
}

结果

在此处输入图片描述

代码

\documentclass{article}
\usepackage{amsmath}
\usepackage{tikz}
\usetikzlibrary{tikzmark}

\newenvironment{alignedcases}{
    \hspace{-.73em}
    \begin{cases}
}{
    \end{cases}
}

\newcommand{\test}[1]{
    \begin{align*}
        a &\tikzmark{#1}= b \\
        &\begin{alignedcases}
            \ge c \\
            \le d
        \end{alignedcases}
    \end{align*}
    %
    \begin{tikzpicture}[overlay, remember picture]
        \draw [red] ([xshift=.31em, yshift=.75em] {pic cs:#1}) -- ++(0,-4.5em);
    \end{tikzpicture}
}


\begin{document}

\footnotesize\test{footnotesize}
\small\test{small}
\normalsize\test{normalsize}
\large\test{large}
\LARGE\test{LARGE}
\huge\test{huge}

\end{document}

答案3

这很棘手:

\documentclass{article}
\usepackage{amsmath}
\begin{document}
    \begin{align*}
        a &= b \\
        &\hspace*{-.2cm}\begin{cases}
            \ge c \\
            \le d
        \end{cases}
    \end{align*}
\end{document}

...但有效:

在此处输入图片描述

答案4

我收到了一些非常好的答案 — 而且非常快!没有一个像我希望的那样令人满意。有时,LaTeX 会遇到一些看似简单的事情,但没关系!

鉴于没有简单的解决方案,我在下面附上了我使用过的另一个版本。与大多数其他答案一样,这有点黑客行为。但是,它确实使=/ /符号完美对齐;只是,左括号不一定完全正确 - 并且\left\{在这里不起作用。

\documentclass{article}
%\usepackage{amsmath}
\usepackage{mathtools}
\begin{document}
\begin{align*}
    a &= b \\
\hspace*{+0.25em}
\mathllap{\Bigg\{}
\hspace*{-0.25em}
&\begin{aligned}
    &\ge c \\
    &\le d
\end{aligned}
\end{align*}
\end{document}

在此处输入图片描述

相关内容