左括号太高,顶部对齐,列表内对齐

左括号太高,顶部对齐,列表内对齐

我有一个列表,其中的项目内容应该是两个线性方程组,用一个大的左括号分组。我希望系统中的顶部方程与项目编号具有相同的基线。问题是括号总是以主线(项目编号的线)为中心。所以即使我成功地让方程顶部对齐,括号仍然居中错误。

该问题已关闭,因为重复了这个问题。如果您认为这是重复的,请阅读下文,看看我明确指出那里的答案没有帮助的地方。(此外,这确实是一个不同的问题即使您觉得那里的答案适用于这里。)

这是我首先要尝试的:

\begin{enumerate}
\item 
  $\left\{
    \begin{aligned}
      x &= 0\\
      y &= 1
    \end{aligned}
  \right.$
\end{enumerate}

将系统居中,使其过高。第一个方程式与项目编号不在同一基线上。(下面的屏幕截图。)因此我尝试顶部对齐:

\begin{enumerate}
\item 
  $\left\{
    \begin{aligned}[t]
      x &= 0\\
      y &= 1
    \end{aligned}
  \right.$
\end{enumerate}

现在,顶部方程式已对齐到我想要的位置,但括号太高了。(下面的屏幕截图。)这是因为括号仍然位于第一行的中心,并向两个方向增长以包含内容,包括“向下移动”的环境。因此,在阅读了一些 tex.se 帖子后,aligned我尝试使用:vcenter

\begin{enumerate}
\item 
  $\left\{\vcenter{\hbox{$
    \begin{aligned}[t]
      x &= 0\\
      y &= 1
    \end{aligned}$}}
  \right.$
\end{enumerate}

输出与第一次尝试一样。(下面的屏幕截图。)

以下分别是这三次尝试的屏幕截图。

在此处输入图片描述

我可以做我想做的事吗?


编辑:有人建议这个问题与这个。至此,这个问题甚至因为这个误解而被关闭了。

那个问题不是这个问题,我看不出有什么办法可以调整那里的答案来回答这个问题。但为了证明我确实在研究这个问题及其答案,并证明事情就是行不通,如果你尝试那里得票最高的答案,结果如下:

\usepackage[fleqn]{amsmath}
\newcommand\mathitem{\item\leavevmode\vspace*{-\dimexpr\baselineskip+\abovedisplayskip\relax}}
    \begin{enumerate} %
        \mathitem \begin{align*}
          x&=0\\
          y&=1
        \end{align*}
    \end{enumerate}

(下面的屏幕截图。)这使用实际显示模式,而不是使用 displaystyle 的内联数学。而且没有办法得到大左括号。所以我尝试了以下方法。注意我并不期望下面的方法能起作用,因为另一个问题的答案是为显示模式数学设计的,而不是内联数学(恰好使用 displaystyle):

\usepackage[fleqn]{amsmath}
\newcommand\mathitem{\item\leavevmode\vspace*{-\dimexpr\baselineskip+\abovedisplayskip\relax}}
    \begin{enumerate} %
        \mathitem $\left\{\begin{aligned}
          x&=0\\
          y&=1
        \end{aligned}\right.$
    \end{enumerate}

它不起作用。它看起来像我原来的例子。下面是最后两次尝试的屏幕截图:

在此处输入图片描述

现在我查看了该问题的可接受答案,它使用了\Longunderstack来自某个包的宏。这个宏垂直堆叠数学。我看不出如何使用它来获得对齐的方程式和大左括号。看来你给这个宏提供了数学内容,所以我尝试:

    \begin{enumerate}  %result looks fine, but code ugly
        \item 
%       FOR SIMPLE REGULAR-HEIGHT STACKS
        \Longunderstack{\begin{aligned}
          x&=0\\
          y&=1
          \end{aligned}}
        \item 
%       FOR IRREGULAR HEIGHT STACKS IN \textstyle
        \Shortunderstack{\begin{aligned}
          x&=0\\
          y&=1
          \end{aligned}}
        \item 
%       FOR IRREGULAR HEIGHT STACKS IN \displaystyle
        \tabbedShortunderstack{\begin{aligned}
          x&=0\\
          y&=1
          \end{aligned}}
    \end{enumerate}

此处的第三项导致编译失败。如果我删除第三项,则会得到:

在此处输入图片描述

除了括号之外,这不是顶部对齐的。所以我尝试不使用aligned

    \begin{enumerate}  %result looks fine, but code ugly
        \item 
%       FOR SIMPLE REGULAR-HEIGHT STACKS
        \Longunderstack{x=0\cr y=1}
        \item 
%       FOR IRREGULAR HEIGHT STACKS IN \textstyle
        \Shortunderstack{x=0\cr y=1}
    \end{enumerate}

更好,但等号并没有真正对齐,所以当我将它应用于更一般的方程时,这不会有帮助。它看起来像这样:

在此处输入图片描述

aligned但是现在,如果没有或者一些类似的阵列环境,我该如何将支架放回去呢?

所以我尝试了另一篇文章中的答案。正如我在评论中所说,它们不起作用,而且永远不会起作用。因为这个问题是另一个问题。该问题是关于显示模式数学中的垂直空间。我的问题是关于如何将可伸缩支架置于中心并计算其高度。

答案1

您应该使用该包delarray

\documentclass{article}
\usepackage{amsmath}
\usepackage{delarray}
\begin{document}
\begin{enumerate}
\item 
$\begin{array}[t]\{{r@{}l}.
      x & {} = 0\\
      y & {} = 1
\end{array}$
\end{enumerate}
\end{document}

第一个代码的输出


{NiceArray}您还可以使用的环境nicematrix

\documentclass{article}
\usepackage{nicematrix}

\begin{document}

\begin{enumerate}
\item 
$\begin{NiceArray}[t]{\{r@{}l}
      x & {} = 0\\
      y & {} = 1
\end{NiceArray}$
\end{enumerate}

\end{document}

第二段代码的输出

答案2

您也可以使用\raisebox。为了尝试对齐基线,我需要在添加支架之前测量高度。

\documentclass{article}
\usepackage{amsmath}
\begin{document}
\begin{enumerate}
\sbox0{$\begin{aligned}
      x &= 0\\
      y &= 1
    \end{aligned}$}%
\item \raisebox{\dimexpr\ht\strutbox-\ht0}{$\left\{\usebox0\right.$}
\end{enumerate}
\end{document}

答案3

我喜欢的方法是使用可选参数换行符将内容向上移动。裸行\\会抱怨没有行可以结束,因此我们首先输入\mbox

\documentclass{article}
\usepackage[fleqn]{amsmath}
\newcommand\mathitem{\item\mbox{}\\[-\baselineskip]}
\begin{document}
 \begin{enumerate} %
  \mathitem $\left\{\begin{aligned}
          x&=0\\
          y&=1
   \end{aligned}\right.$
 \end{enumerate}
\end{document}

您也可以使用 获得类似的结果\mathitem $\begin{cases}x=0\\y=1\end{cases}$,尽管它并不完全对齐=

相关内容