如何使用左对齐环境?

如何使用左对齐环境?

有没有办法可以模拟align数学模式命令的环境,而无需将所有书写都放在输出页面的中心?

梅威瑟:

\documentclass{article}
\usepackage{mathtools}

\begin{document}
\begin{align*}
\cos\theta_1 \cos\theta_2-\sin\theta_1\sin\theta_2 &= \cos(\theta_1 +\theta_2) \\
\sin\theta_1 \cos\theta_2 + \cos\theta_1 \sin\theta_2 &= \sin(\theta_1+\theta_2)
\end{align*}

\end{document}

答案1

amsmath 包有一个fleqn选项,根据手册 ( texdoc amsmath),其效果如下:

将方程式放置在距左边距固定的缩进处,而不是文本列的中心。

因此:

\usepackage[fleqn]{amsmath}

这似乎就是你想要的。

mathtools包在内部加载amsmath并将任何未知参数传递给它。这包括fleqn选项。因此:

\usepackage[fleqn]{mathtools}

也有效。

以下是输出的比较。上图没有输出fleqn,下图有输出。

fleqn 选项

答案2

正如安德鲁提到的,你可以使用\usepackage[fleqn]{amsmath},但这意味着全部你的方程式将被移动到左边。

但是,如果您希望一些居中,一些在左侧,那么您可以使用环境。但是,请注意使用时需要flalign尾随。正如 egreg 所述,环境中的尾随仅在其中一行中是必需的。&&flalign

\documentclass{article}
\usepackage{amsmath}% mathtools includes this so this is optional
\usepackage{mathtools}

\begin{document}
\begin{align*}% centered
\cos\theta_1 \cos\theta_2-\sin\theta_1\sin\theta_2 &= \cos(\theta_1 +\theta_2) \\
\sin\theta_1 \cos\theta_2 + \cos\theta_1 \sin\theta_2 &= \sin(\theta_1+\theta_2)
\end{align*}

\begin{flalign*}% left aligned
\cos\theta_1 \cos\theta_2-\sin\theta_1\sin\theta_2 &= \cos(\theta_1 +\theta_2) &\\
\sin\theta_1 \cos\theta_2 + \cos\theta_1 \sin\theta_2 &= \sin(\theta_1+\theta_2) &% Need tailing alignment char to get all the way left
\end{flalign*}
\end{document}

\;从 OP 的 MWE 中删除了,它在没有必要的地方插入了额外的间距。

答案3

我不确定你说的“模仿”是什么意思,但我猜你的意思是你不想让方程式居中,而是以另一种方式对齐。平均能量损失会很好,可以更好地理解你的问题,知道你正在使用什么文档类,等等。无论如何,如果你加载包amsmath并写下类似这样的内容,你可以用 align 以不同的方式对齐方程式:

\documentclass[a4paper,10pt,fleqn]{article}
\usepackage{amsmath}
\setlength{\mathindent}{1cm}
\begin{document}
\noindent Blah
\begin{align*}
y = ad + da\\
y = ad + da
\end{align*}
\end{document}

正如您可能猜到的那样,\setlength{\mathindent}{1cm}让您控制缩进。

相关内容