web-dev-qa-db-ja.com

長い方程式を行で分割するにはどうすればよいですか?

新しい行に方程式を追加しようとしています。問題は、方程式が線に対して長すぎるため、手動で分割する必要があることです。それ以外の場合は、右側の列または右側の余白に重なるだけです(そして見苦しい...)。 LaTeXが私のために方程式を壊すことができる方法はありますか?

ラテックスコードを添付します。

\begin{align*}
f(n)-f(0) &= A(n)-B(n)-C(n)-D(n)\cdot d-\left(A(0)-B(0)-C(0)-D(0)\cdot d\right) \\
          &= A(n)-0-X-D(n)\cdot d-\left(0-0-0-0\right) \\
          &= A(n)-X-D(n)\cdot d
\end{align*}

問題のある行は最初の行で、長すぎます。

26
Anna

breqnパッケージは、長い方程式を自動的に分割するように設計されています。ほとんどの状況で非常にうまく機能しますが、amsmathパッケージほど成熟していません。方程式の例を記述する方法は次のとおりです。

\documentclass {article} 
\usepackage {breqn} 
\begin {document} 
\begin {dmath} 
 f(n)- f(0)= A(n)-B(n)-C(n)-D(n)\ cdot d-\left(A(0)-B(0)-C(0)-D(0)\cdot d\right)
 = A(n)-0-XD(n)\ cdot d-\left(0-0-0-0\right)
 = A(n) -XD(n)\ cdot d 
\end {dmath} 
\end {document} 

整列または改行のマークアップはありませんが、出力はalignを使用した場合と基本的に同じになります。

13
Will Robertson

私は通常、amsmathパッケージとsplit構造体を使用してこれを処理することを好みます。方程式を行に分割するための便利な構造がたくさんありますが、通常は最も簡単に使用できます。

多くのTeXインストールにはすでにパッケージがありますが、 AMS Webサイト からも入手できます。

10
Stephen Canon

過去に使用した標準的なアプローチは、eqnarrayです。たとえば、 このページ を参照してください。

1
ire_and_curses

私の知る限り、これは不可能です。ディスプレイ内で作業する場合、ユーザーは改行を担当します。改行の方法、および括弧の場合の次の行への継続方法は、コンピューターにとってはもちろん、人間にとっては難しい質問です(例えば、Grätzerの関連セクション「Math into LaTeX」を確認してください)。

例:\ left(の後の最初の行を分割する場合、最後に\ right。が必要であり、次の行の先頭に\ left。が必要です(そうしないとエラーが発生します)。次の行の始まりは、\ left(

0
Martijn