在对齐环境中中心对齐方程

在对齐环境中中心对齐方程

如果之前有人问过这个问题,我很抱歉,但我在几个地方搜索后找不到它。我目前正在处理如下方程数组:

\begin{align}

y_i^3=y_i^2&=z_i^2=z_i^3 &&\text{if\, $1\leq i\leq n-1$}\\

y_iz_iy_i=y_i,\quad &z_iy_iz_i=z_i &&\text{if\, $1\leq i\leq n-1$}\\

y_iz_i&=z_{i+1}y_{i+1} &&\text{if\, $1\leq i\leq n-2$}

\end{align}

但我真的想去掉&方程式中的 's,这样方程式就会居中对齐,“如果...”位就会左对齐,而且每行仍然有标签。如果我去掉 ' &s 并将&&'s改为&&&'s,那么除了方程式是右对齐的以外,我得到了我想要的一切。

有人可以帮忙吗?

答案1

r的右对齐lalign在所谓的“align前导码”中设置的(存储在\align@preamble)。您可以更新此序言来调整结构的对齐/布局align

下面是一个提供 的 MWE myalign,它使“左列”居中,并使“右列”在常规 内左对齐。本质上,只有通过在“左列”内容的右侧align插入附加内容,才能将“左列”对齐更改为居中:\hfil

在此处输入图片描述

\documentclass{article}
\usepackage{amsmath}% http://ctan.org/pkg/amsmath
\makeatletter
\newenvironment{myalign}{%
  \def\align@preamble{% Definition taken from amsmath.dtx
    &\hfil
     \strut@
     \setboxz@h{\@lign$\m@th\displaystyle{####}$}%
     \ifmeasuring@\savefieldlength@\fi
     \set@field
     \hfil% <---------- Alignment added
     \tabskip\z@skip
    &\setboxz@h{\@lign$\m@th\displaystyle{{}####}$}%
     \ifmeasuring@\savefieldlength@\fi
     \set@field
     \hfil
     \tabskip\alignsep@
  }\align}{\endalign}
\begin{document}
\begin{align}
  y_i^3 = y_i^2 = z_i^2 = z_i^3 &\qquad \text{if $1 \leq i \leq n-1$} \\
  y_iz_iy_i = y_i, \quad z_iy_iz_i = z_i &\qquad \text{if $1 \leq i \leq n-1$} \\
  y_iz_i = z_{i+1}y_{i+1} &\qquad \text{if $1 \leq i \leq n-2$}
\end{align}

\begin{myalign}
  y_i^3 = y_i^2 = z_i^2 = z_i^3 &\qquad \text{if $1 \leq i \leq n-1$} \\
  y_iz_iy_i = y_i, \quad z_iy_iz_i = z_i &\qquad \text{if $1 \leq i \leq n-1$} \\
  y_iz_i = z_{i+1}y_{i+1} &\qquad \text{if $1 \leq i \leq n-2$}
\end{myalign}
\end{document}

相关内容