Aufzählen von Gleichungen Ausrichtung

Aufzählen von Gleichungen Ausrichtung

Bildbeschreibung hier eingeben

Das Einzige, was mir einfällt, ist die Verwendung intertextund manuelle Platzierung von Zählern. Ist das wirklich die einzige Möglichkeit?

Antwort1

Sie können Folgendes verwenden \intertext:

\documentclass{article}
\usepackage{mathtools}

\begin{document}

\begin{enumerate}\mathtoolsset{above-intertext-sep=-\belowdisplayshortskip}
\item How can I align the equations
\begin{align*}
    a &= 2. \\
\intertext{
  \item Which appear in various items of \texttt{enumerate}?
}
  b &= a + 123.
\end{align*}
\end{enumerate}

\end{document}

Bildbeschreibung hier eingeben

Antwort2

Sie können verwenden eqparbox.

\documentclass{article}
\usepackage{amsmath}
\usepackage{eqparbox}
\begin{document}
\begin{enumerate}
 \item How can I align the equation
 \begin{align*}
  \eqmakebox[L][r]{$a$}&=\eqmakebox[R][l]{$2$}
 \end{align*}
 \item with the equation
 \begin{align*}
  \eqmakebox[L][r]{$b$}&=\eqmakebox[R][l]{$a+123$}
 \end{align*} 
 \item With \verb|eqparbox|.
\end{enumerate}
You can make it more structured by defining macros for that.
\newcommand{\LHS}[2][pft]{\eqmakebox[L#1][r]{$\displaystyle #2$}}
\newcommand{\RHS}[2][pft]{\eqmakebox[R][l]{$\displaystyle #2$}}
\begin{enumerate}
 \item Now you can align the equation
 \begin{align*}
  \LHS{a}&=\RHS{2}
 \end{align*}
 \item with the equation
 \begin{align*}
  \LHS{b+7c}&=\RHS{a+123}
 \end{align*} 
 \item using the macros \verb|\LHS| and \verb|\RHS|.
\end{enumerate}
The optional argument is an identifier. For each new set of mutually aligned
equations you need a distinct identifier. That is, all the left--hand sides and
all the right--hand sides with the same identifier have the same widths,
respectively.
\end{document}

Bildbeschreibung hier eingeben

NACHTRAG: Dies ist ein Nachtrag zuegregs nette(!) LösungWenn Sie das Laden enumitem(über mathtools) in Betracht ziehen, können Sie die Dinge benutzerfreundlicher machen, indem Sie sagen

\setlist[enumerate]{before=\mathtoolsset{above-intertext-sep=-\belowdisplayshortskip}}

Auf diese Weise müssen Sie dies nicht jeder enumerateUmgebung manuell hinzufügen.

\documentclass{article}
\usepackage{mathtools}
\usepackage{enumitem}
\setlist[enumerate]{before=\mathtoolsset{above-intertext-sep=-\belowdisplayshortskip}}
\begin{document}

\begin{enumerate}
\item How can I align the equations
\begin{align*}
    a &= 2 \;,\\
\intertext{
  \item which appear in various items of \texttt{enumerate},
}
  b &= a + 123\;,\\
\intertext{
  \item and without adding something by hand whenever I use \texttt{enumerate}?
}
  b &= c + d+\frac{7\pi}{2}\;.
\end{align*}
\end{enumerate}

\begin{align}
a &= 2 \;.\\
\intertext{We're back to normal.}
 b &= a + 123\;.
\end{align}
\end{document}

Bildbeschreibung hier eingeben

Antwort3

Sie müssen Zugriff auf die breitesten Elemente auf der linken und rechten Seite jeder Gleichung haben und eine Mischung aus \phantoms und over lapping verwenden. In Ihrem Setup aist breiter als bund a + 123ist breiter als 2., also

Bildbeschreibung hier eingeben

\documentclass{article}

\usepackage{mathtools}

\begin{document}

\begin{enumerate}
  \item
  How can I align the equations
  \[
    a = \mathrlap{2.}\phantom{a + 123}% Widest RHS is "a + 123"
  \]

  \item
  Which appear in various items of \verb|enumerate|?
  \[
    \phantom{a}\mathllap{b} = a + 123 % Widest LHS is "a"
  \]
\end{enumerate}

\end{document}

Der obige Prozess wird vereinfacht durcheqparbox(sehendie andere Antwort\label), indem die Breite des breitesten Elements mithilfe des - \refSystems von LaTeX durch erfasst wird \eqmakebox[<tag>][<align>]{<stuff>}.

verwandte Informationen