好吧,我已经为此折腾了太久,所以我决定寻求帮助。问题是这样的,我正在使用双列布局,并且我有一些很长的方程式,我想优雅地显示它们。这就是我想要的:
|<some eq> = <first part of a lengthy eq> |
| <very lengthy second part of a lengthy eq>|
|<another eq> = <first part of a lengthy eq> |
| <very lengthy second part of a lengthy eq>|
垂直线表示边距。因此,等式的第一部分左对齐,第二部分右对齐。在进行此操作的同时,我还想知道如何获得对齐“=”符号的变体:
|<some eq> = <first part of a lengthy eq> |
| <very lengthy second part of a lengthy eq>|
|<another eq> = <first part of a lengthy eq> |
| <very lengthy second part of a lengthy eq>|
我尝试了大多数 AMS 数学环境以及 mathtools 的多行环境。我最后一次尝试使用 flalign,但第二部分超出了范围,如下所示
|<some eq> = <first part of a lengthy eq> |
| <very lengthy second part of a lengthy eq>
非常感谢您的帮助,希望解决方案不要太过黑客化。
不太重要的后续问题:如何通过一个垂直居中的方程编号获得上述内容,以及如何通过两个方程的方程编号获得它?
更新。为了响应对最小工作示例的请求。好吧,目前我还没有让它工作,既不是以简单的方式,也不是以复杂的方式。但是为了不让你空手而归,这是我目前使用的:
\begin{align*}
&\begin{multlined}
f_1 = -f_2 = a + a + a + a + a +\\
b + b + b + b + b + b + b + b + b + b
\end{multlined}\\
&\begin{multlined}
f_3 = f_4 = c + c + c + c + c +\\
d + d + d + d + d + d + d + d + d + d
\end{multlined}
\end{align*}
这里的问题是方程式居中。我希望多行线的第一部分位于左边距,多行线的第二部分位于右边距。
答案1
结合:flalign*
\mathllap
\documentclass[ a4paper, twocolumn]{article}%
\usepackage[showframe]{geometry}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{lmodern}
\usepackage{mathtools}
\usepackage{lipsum}
\begin{document}
\lipsum[1]
\begin{flalign}
f_1 &= -f_2 = a + a + a + a + a +\\
& &\mathllap{ b + b + b + b + b + b + b + b+ b }+ b& \\
f_3& = f_4 = c + c + c + c + c +\\
& & & \mathllap{d + d + d + d + d + d + d + d + d + d}
\end{flalign}
\lipsum[2-6]
\end{document}
答案2
编辑: 像下面的第一个等式吗?
\documentclass{article}
\usepackage{mathtools}
\usepackage{showframe}
\renewcommand*\ShowFrameColor{\color{red}}
\begin{document}
\begin{gather*}
\begin{multlined}[t][\linewidth]
f_1 = -f_2 = a + a + a + a + a +\\
b + b + b + b + b + b + b + b + b + b
\end{multlined}\\
\begin{multlined}[t][\linewidth]
f_3 = f_4 = c + c + c + c + c +\\
d + d + d + d + d + d + d + d + d + d
\end{multlined}
\end{gather*}
\end{document}
答案3
通过一些用户干预来设置底线的适当最大宽度:
\documentclass[twocolumn]{article}
\usepackage{amsmath,mathtools}
\usepackage{kantlipsum}
\makeatletter
\newcommand{\rightbox}[2]{%
\ifmeasuring@
\mathmakebox[#1][r]{{}#2}%
\else
\mathmakebox[\ifcase\expandafter 2\maxcolumn@widths\fi][r]{{}#2}%
\fi
}
\makeatother
\begin{document}
\kant*[1]
\begin{align*}
\begin{split}
f_1 &= -f_2 = a + a + a + a + a \\
&\rightbox{.8\columnwidth}{+ b + b + b + b + b + b + b + b + b + b}
\end{split} \\
\begin{split}
f_3+f_0 &= f_4 = c + c + c + c + c \\
&\rightbox{.8\columnwidth}{+ d + d + d + d + d + d + d + d + d + d}
\end{split}
\end{align*}
and the same with numbers
\begin{align}
\begin{split}
f_1 &= -f_2 = a + a + a + a + a \\
&\rightbox{.7\columnwidth}{+ b + b + b + b + b + b + b + b + b + b}
\end{split} \\
\begin{split}
f_3+f_0 &= f_4 = c + c + c + c + c \\
&\rightbox{.7\columnwidth}{+ d + d + d + d + d + d + d + d + d + d}
\end{split}
\end{align}
\kant[3-8]
\end{document}