=
環境内に整列した一連の方程式がありますsplit
。(実際にはすべて同じ方程式なので、最初の方程式以外のすべての方程式の左辺が欠落しています。)
残念ながら、最後の数式は非常に長く、1 行に収まりません。分割する必要があります。規則が何なのかわかりませんが、右揃えにすべきだと思います。どのようにすればよいですか?
\documentclass{article}
\usepackage{amsmath}
\begin{document}
\[
\begin{split}
x &= a + a \\
&= b + b + b + b \\
&= c + c + c + c + c + c + c + c + c + c + c + c \\
% obviously does not work
\hfill + c + c + c + c + c + c + c + c + c + c
\end{split}
\]
\end{document}
答え1
活用できるmathtools
'multlined
環境:
\documentclass{article}
\usepackage{amsmath,mathtools}
\begin{document}
\[
\begin{split}
x &= a + a \\
&= b + b + b + b \\
&= \!\begin{multlined}[t]
c + c + c + c + c + c + c + c + c + c + c + c \\
+ c + c + c + c + c + c + c + c + c + c
\end{multlined}
\end{split}
\]
\end{document}
注:\!
環境の前の は、=
との間に正しい間隔を確保するためのものですc
。
オプションの引数として、2 行の合計幅 (最初の行の左余白から最後の行の右余白まで) を指定することもできますmultlined
。
\documentclass{article}
\usepackage{amsmath,mathtools}
\begin{document}
\[
\begin{split}
x &= a + a \\
&= b + b + b + b \\
&= \!\begin{multlined}[t][10cm]
c + c + c + c + c + c + c + c + c + c + c + c \\
+ c + c + c + c + c + c + c + c + c + c
\end{multlined}
\end{split}
\]
\end{document}
2 行を右揃えにしたい場合は、グローバルまたはローカルでmathtools
キーfirstline-afterskip
を に設定できます。0pt
\documentclass[border=5pt,preview]{standalone}
\usepackage{amsmath,mathtools}
\begin{document}
\mathtoolsset{firstline-afterskip=0pt}
\[
\begin{split}
x &= a + a \\
&= b + b + b + b \\
&= \!\begin{multlined}[t]
c + c + c + c + c + c + c + c + c + c + c + c \\
+ c + c + c + c + c + c + c + c + c + c
\end{multlined}
\end{split}
\]
\end{document}
答え2
標準的かつ最も簡単な方法は、単に線を追加してsplit
、たとえば 1 つの四角形だけ右に移動するだけです。これは、位置合わせを気にしない、私が好む方法です。
あるいは、multlined
from を使用しますmathtools
:
\documentclass{article}
\usepackage{amsmath,mathtools}
\begin{document}
\[
\begin{split}
x &= a + a \\
&= b + b + b + b \\
&= c + c + c + c + c + c + c + c + c + c + c + c \\
&\qquad + c + c + c + c + c + c + c + c + c + c
\end{split}
\]
\[
\begin{split}
x &= a + a \\
&= b + b + b + b \\
&= \mathtoolsset{firstline-afterskip=0pt}
\!\begin{multlined}[t] % <---- don't forget \!
c + c + c + c + c + c + c + c + c + c + c + c \\
+ c + c + c + c + c + c + c + c + c + c
\end{multlined}
\end{split}
\]
\end{document}
答え3
たとえば、スタックを使用できます。行の高さが均一であれば、次のように機能します。
\documentclass{article}
\usepackage{amsmath,stackengine}
\stackMath
\begin{document}
\[
\begin{split}
x &= a + a \\
&= b + b + b + b \\
&= \stackengine{\baselineskip}{c + c + c + c + c + c + c + c + c + c + c + c}
{{}+ c + c + c + c + c + c + c + c + c + c}{U}{r}{F}{F}{L}
\end{split}
\]
\end{document}
積み重ねられた行の高さが標準でない場合は、次のようになります。
\documentclass{article}
\usepackage{amsmath,stackengine}
\stackMath
\begin{document}
\[
\begin{split}
x &= a + a \\
&= b + b + b + b \\
&= \stackengine{5pt}{c + c + c + c + \dfrac{a}{b} + c + c + c + c + c + c + c}
{{}+ c + \dfrac{c}{d} + c + c + c + c + c + c + c + c}{U}{r}{F}{F}{S}
\end{split}
\]
\end{document}
これは の 5 番目の引数で\stackengine
、 によって与えられ{r}
、スタックの配置を定義します。他のオプションは{l}
およびです{c}
。