多个 align-block 的对齐

多个 align-block 的对齐

我尝试对齐多个方程块,以便对不同的块使用相同的对齐方式。我目前对每行使用align-environment array。通过指定列的宽度,我可以确保正确对齐。但是,方程编号现在没有正确对齐。我更喜欢下面示例中第二次尝试的对齐方式,但更喜欢第一次尝试的方程编号的垂直对齐方式。

\section{attempt 1}
\begin{align}
    &\text{s.t.} &\quad& \sum\limits_{i \in I_{j}^2} x_i \geq 1, &\qquad\qquad&  \forall j \in J \label{myLabel}\\
    &\text{s.t.} && \sum\limits_{i \in I_{j}^2} x_i \geq 1, &&  \forall j \in J
\end{align}

\text{这里有一些文本,可能还有新的部分}

\subsection{new subsection}

\begin{align}
    &\text{s.t.} &\quad& \sum\limits_{i \in I_{j}^2} x_i + y_i + z_i\geq 1, &\qquad\qquad&  \forall j \in J \label{myLabel}\\
    &\text{s.t.} && \sum\limits_{i \in I_{j}^2} x_i \geq 1, &&  \forall j \in J
\end{align}

\section{attempt 2}
\begin{align}
 \begin{array}{p{0.8 cm} p{6.2 cm} p{2 cm}}
s.t. & $\sum\limits_{i \in I_{j}^2} x_i \geq 1,$    & $ \forall j \in J$
\end{array}\\
\begin{array}{p{0.8 cm} p{6.2 cm} p{2 cm}}
s.t. & $\sum\limits_{i \in I_{j}^2} x_i \geq 1,$    & $ \forall j \in J$
\end{array}
\end{align}

\text{这里有一些文本,可能还有新的部分}

\subsection{new subsection}

\begin{align}
 \begin{array}{p{0.8 cm} p{6.2 cm} p{2 cm}}
s.t. & $\sum\limits_{i \in I_{j}^2} x_i \geq 1,$    & $ \forall j \in J$
\end{array}\\
\begin{array}{p{0.8 cm} p{6.2 cm} p{2 cm}}
s.t. & $\sum\limits_{i \in I_{j}^2} x_i + y_j \geq 1,$  & $ \forall j \in J$
\end{array}
\end{align}

有办法吗?要么通过固定对齐中的列宽,要么通过更改数组中方程编号的垂直对齐。

答案1

您可以在同一个环境中拥有多个对齐点align,或者使用一个alignat环境。

但是这是你所要求的(如果我理解正确的话):

% arara: latex

\documentclass{article}
\usepackage{mathtools}

\begin{document}
\begin{align}
    \begin{array}{p{0.8 cm} p{6.2 cm} p{3.2 cm}} % reduced the width in order to fit on the line
        s.t. & $\sum\limits_{i \in I_{j}^2} x_i \geq 1,$    & $ \forall j \in J$
    \end{array}\label{myLabel} % removed back slashes here
\end{align}
\end{document}

在此处输入图片描述

您可以看到右边的数字似乎有点太低。这是由于求和运算符的限制。

如果你使用典型的方法,那就好了:

% arara: pdflatex

\documentclass{article}
\usepackage{mathtools}

\begin{document}
\begin{alignat}{3}
    &\text{s.t.} &\quad& \sum\limits_{i \in I_{j}^2} x_i \geq 1, &\qquad\qquad&  \forall j \in J \label{myLabel}\\
    &\text{s.t.} && \sum\limits_{i \in I_{j}^2} x_i \geq 1, &&  \forall j \in J
\end{alignat}
\ref{myLabel}
\end{document}

在此处输入图片描述

相关内容