我想在alignat*
环境中左对齐几个方程,但我不知道如何实现。本质上,我想要的是行为像flalign
但允许我像对齐项一样对齐项的东西alignat
。但是,使用fleqn
对齐文档中的所有方程对我来说不是一个选项,因为我只想在一个实例中左对齐它们。我环顾四周,发现这个问题和这个。虽然我不认为这些回答了我的问题,但是我对使用 LaTeX 还很陌生,所以如果它们能回答我的问题的话,请原谅我的无知。
如果有一种方法可以创建一个列表,然后对齐列表中的术语,这对我来说也有效,但是我收到警告消息,我不能在数学环境中使用列表,但这是我知道如何对齐方程式的唯一方法。
我文档中使用的所有包的示例:
\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage{natbib}
\usepackage{xcolor}
\usepackage{amsmath,amsfonts}
\usepackage{amssymb}
\usepackage{mathtools}
\usepackage{cancel}
\usepackage{enumitem}
\usepackage{amsthm}
\newtheorem{innercustomthm}{Theorem} % I use this because I want to number my theorems myself
\newenvironment{customthm}[1]
{\renewcommand\theinnercustomthm{#1}\innercustomthm}
{\endinnercustomthm}
\begin{document}
\begin{customthm}{5.3.9}[Properties of the transpose]
\begin{alignat*}{3}
&\textbf{\textup{(a) }} (A+B)^T &&= A^T + B^T \qquad && \forall ~n \times n \text{ matrices A and B}. \\
&\textbf{\textup{(b) }} (kA)^T &&= kA^T && \forall \text{ matrices A, scalars k}. \\
\end{alignat*}
\end{customthm}
\end{document}
对齐方式很棒,但我需要它在左边。正如我上面提到的,如果有办法创建一个列表并在该列表内对齐它,那么这也很好(甚至可能更好,因为我不必自己输入(a)、(b)等),但我不知道如何做到这一点。提前非常感谢,我希望我清楚地提出了这个问题。
附言:如果您想知道我为什么需要这个,我现在只是在为自己写一个总结,但想在 LaTeX 方面做得更好,因此我这样做,一举两得……
答案1
这里使用常规列表来设置定理中的项目列表似乎更合适。由于您正在加载enumitem
列表元素的格式化已经很容易了。再加上eqparbox
的\eqmakebox[<tag>][<align>]{<stuff>}
,您可以设置跨越 s 的水平对齐方式\item
:
\documentclass{article}
\usepackage{mathtools}
\usepackage{enumitem,eqparbox}
\usepackage{amsthm}
\newtheorem{theorem}{Theorem}
\begin{document}
\begin{theorem}[Properties of the transpose]
\begin{alignat*}{3}
&\textbf{\textup{(a) }} (A+B)^T &&= A^T + B^T \qquad && \forall ~n \times n \text{ matrices A and B}. \\
&\textbf{\textup{(b) }} (kA)^T &&= kA^T && \forall \text{ matrices A, scalars k}.
\end{alignat*}
\end{theorem}
\begin{theorem}[Properties of the transpose]
\mbox{}
\begin{enumerate}[label=\textbf{\upshape(\alph*)}, ref=(\alph*)]
\item $\eqmakebox[LHS][l]{$(A+B)^T$} = \eqmakebox[RHS][l]{$A^T + B^T~$} \forall~n \times n$ matrices $A$ and $B$.
\item $\eqmakebox[LHS][l]{$(kA)^T$} = \eqmakebox[RHS][l]{$kA^T$} \forall~n$ matrices $A$, scalars $k$.
\end{enumerate}
\end{theorem}
\end{document}