目前我正在尝试弄清楚如何中断环境。到目前为止我做了什么...
\documentclass{article}
\usepackage{amsmath}
\newenvironment{envnew}
{
\begingroup
\csname align*\endcsname
}{
\csname endalign*\endcsname
\endgroup
}
\newcommand{\last}[1]{%
\end{envnew}\begin{envnew}#1%
}
\begin{document}
\begin{envnew}
a &= b + c\\
x &= y + z\\
a &= b + c\\
x &= y + z
\last{\text{content}}
\end{envnew}
\end{document}
我认为大部分内容应该是不言自明的,我只是想在最后添加第二个环境 - 背景应该不重要。大部分给定的代码都可以工作,但它会因错误而中断...
! Missing $ inserted.
<inserted text>
$
l.24 \end{envnew}
...知道我做错了什么吗?
答案1
amsmath
具有多个多行数学环境,并且可以对单个显示使用多个多行数学环境以获得所需的结果。有时,如果“文本”行上方和下方的材料在对齐点的左侧和右侧具有不同宽度的表达式,则还需要采取一些迂回措施。这是一个人为的例子。
\documentclass{article}
\usepackage{amsmath}
\begin{document}
\begin{gather*}
\begin{aligned}
\phantom{a + b}\llap{$a$} &= b + c\\
x &= y + z\\
a &= b + c\\
x &= y + z
\end{aligned}\\
\text{content}\\
\begin{aligned}
a + b &= c\\
x &= y + z
\end{aligned}
\end{gather*}
\end{document}
与复合显示器对齐部分中最长的线段的幻像一起使用\llap
,以确保分离组件的相互对齐。 (如果右侧存在较长的线段,则将\rlap
使用,放置在关系符号之后。)