Start LaTeX Projekte Datenschutz Kurse Impressum



LaTeX Extra > LaTeX Pakete > Autobreak Die Seite als PDF Autobreak Paket


1 Autobreak - automatischer Zeilen- und Seitenumbruch in Formeln

Das Paket Autobreak (Version 0.1 vom 19.06.2016) stellt die Umgebung autobreak bereit, die automatische Zeilen- und Seitenumbrüche innerhalb der align Gleichungsumgebung des amsmath Paketes durchführt. Zwar konnte man auch schon vor diesem Paket einen Zeilen- beziehungsweise einen Seitenumbruch innerhalb der Gleichungsumgebung erhalten, aber dieser Umbruch musste manuell gesetzt werden. Daher stellt die Verwendung dieses Paket bei sehr langen Gleichungen eine deutliche Erleichterung dar. Insbesondere im dem Fall, dass mehrere Zeilenumbrüche gesetzt werden müssen. Ein weiterer Vorteil ist, dass jetzt spätere Änderungen an der Textbreite nicht zu einem nochmaligen bearbeiten der Gleichungen führt. Die Formel selbst kann in einer seperaten Datei gespeichert werden.
Da die Umgebung innerhalb der align Gleichungsumgebung aus amsmath verwendet wird das amsmath Paket benötigt. Zusätzlich wird auch das catchfile Paket gebraucht.

1.1 Paket einbinden

Das Paket wird mit \usepackage{autobreak} eingebunden. Zur Zeit verfügt das Paket noch über keine Optionen.

2 Umgebung

Die autobreak Umgebung ist in die align Umgebung eingebettet.
\begin{align}
\begin{autobreak}
lange Formel
\end{autobreak}
\end{align}
Die autobreak Umgebung funktioniert auch mit der unnummerierten Variante der align Umgebung
\begin{align*}
\begin{autobreak}
lange Formel
\end{autobreak}
\end{align*}

Alternativ kann die Formel mit Hilfe des Befehls input auch aus einer externen Datei eingebunden werden.
\begin{align}
\begin{autobreak}
\input{Name}
\end{autobreak}
\end{align}

Es ist auch möglich innerhalb einer align Umgebung mehrere autobreak Umgebungen zu verwenden. Dabei ist aber auf den Zeilenumbruch zwischen den jeweiligen autobreak Umgebungen zu achten. Da anderfalls die nachfolgende Umgebung bereits in der letzten Zeile der vorhergehenden Umgebung beginnen kann.
\begin{align}
\begin{autobreak}
\input{Name_1}
\end{autobreak}
\\
\begin{autobreak}
\input{Name_2}
\end{autobreak}
\end{align}

Falls mehrere autobreak Umgebungen in einer align Umgebung verwendet wurden, muss zweimal kompiliert werden. Nach dem ersten Kompilieren erhält man die folgende Warnung:
Package autobreak Warning: Layout may have changed. 
(autobreak)                Rerun to get layout correct.

2.1 Hinweise

Um einen optisch schönen Zeilenumbruch zu erhalten sollte in jeder Zeile innerhalb der autobreak Umgebung nur ein Term der Formel stehen. Vereinfacht formuliert versucht das Programm solange den gesamten Inhalt der nachfolgenden Zeilen an die vorhergehende Zeile dranzuhängen bis kein Platz mehr da ist. Dann kommt es zum Zeilenumbruch. Wenn jetzt aber mehrere Terme in einer Zeile stehen werden diese nicht für sich einzelnen, sondern zusammen genommen, betrachtet. Nachfolgendes Beispiel zeigt das Problem:
\begin{align*}
\begin{autobreak}
\cos(x) = \sum_{n = 0}^{\infty} (- 1)^{n}\dfrac{x^{2n}}{(2n)!}
=  \frac{x^{0}}{0!} - \frac{x^{2}}{2!} + \frac{x^{4}}{4!} 
- \frac{x^{6}}{6!} + \frac{x^{8}}{8!} - \frac{x^{10}}{10!} 
...
- \frac{x^{30}}{30!} + \frac{x^{32}}{32!} - \frac{x^{34}}{34!} 
+ \frac{x^{36}}{36!} - \frac{x^{38}}{38!} + \frac{x^{40}}{40!}...
\end{autobreak}
\\
\begin{autobreak}
\cos(x) = \sum_{n = 0}^{\infty} (- 1)^{n}\dfrac{x^{2n}}{(2n)!}
=  \frac{x^{0}}{0!} 
- \frac{x^{2}}{2!} 
+ \frac{x^{4}}{4!} 
...
+ \frac{x^{36}}{36!} 
- \frac{x^{38}}{38!} 
+ \frac{x^{40}}{40!} 
...
\end{autobreak}
\end{align*}

cos(x) = ∑n=0 (- 1)n   x2n ⁄ (2n)! = x0 ⁄ 0! - x2 ⁄ 2! + x4 ⁄ 4! - x6 ⁄ 6! + x8 ⁄ 8! - x10 ⁄ 10! + x12 ⁄ 12! - x14 ⁄ 14!
+ x16 ⁄ 16! - x18 ⁄ 18! + x20 ⁄ 20! - x22 ⁄ 22! + x24 ⁄ 24! - x26 ⁄ 26! + x28 ⁄ 28! - x30 ⁄ 30!
+ x32 ⁄ 32! - x34 ⁄ 34! + x36 ⁄ 36! - x38 ⁄ 38!+ x40 ⁄ 40! ...

cos(x) = ∑n=0 (- 1)n   x2n ⁄ (2n)! = x0 ⁄ 0! - x2 ⁄ 2! + x4 ⁄ 4! - x6 ⁄ 6! + x8 ⁄ 8! - x10 ⁄ 10! + x12 ⁄ 12! - x14 ⁄ 14! + x16 ⁄ 16! - x18 ⁄ 18! + x20 ⁄ 20!
- x22 ⁄ 22! + x24 ⁄ 24! - x26 ⁄ 26! + x28 ⁄ 28! - x30 ⁄ 30! + x32 ⁄ 32! - x34 ⁄ 34! + x36 ⁄ 36! - x38 ⁄ 38!+ x40 ⁄ 40! ...

Da Variante mit nur einem Term pro Zeile unter Umständen zu sehr vielen Zeilen führen kann, ist es sinnvoll die Gleichung in eine externe Datei auszulagern.

2.2  Befehle

Mit den Befehlen \everybeforeautobreak{<Token>} und \everyafterautobreak{<Token>} wird vor beziehungsweise nach jedem Zeilenumbruch das als Token gesetzte Zeichen eingefügt.
\begin{align}
\everyafterautobreak{\times}
\begin{autobreak}
\cos\left(\frac{\pi x}{2}\right) =
\left(1-x^2\right)
\left(1-\frac{x^2}{9}\right)
...
\left(1-\frac{x^2}{441}\right)
\dots
\end{autobreak}
\end{align}

cos (π x ⁄ 2) = (1-x2) (1-   x2 ⁄ 9) (1-   x2 ⁄ 25) (1-   x2 ⁄ 49) (1-   x2 ⁄ 81) (1-   x2 ⁄ 121) (1-   x2 ⁄ 169)
                       × (1-   x2 ⁄ 225) (1-   x2 ⁄ 289) (1-   x2 ⁄ 361) (1-   x2 ⁄ 441) ...
Um einen Zeilenumbruch nach einer bestimmten Zeile zu vermeiden, wird am Ende dieser Zeile das Prozentzeichen % gesetzt. Das heißt der Zeilenumbruch erfolgt dann bereits vor dieser Zeile. Im nachfolgenden Beispiel würde der Umbruch nach dem Term [(x20)/20!] erfolgen. Durch die Setzung des Prozentzeichens % erfolgt der Umbruch aber vor diesem Term.
\begin{align}
\begin{autobreak}
\cos(x) = \sum_{n = 0}^{\infty} (- 1)^{n}\dfrac{x^{2n}}{(2n)!}
=  \frac{x^{0}}{0!} 
- \frac{x^{2}}{2!} 
...
+ \frac{x^{20}}{20!} %
- \frac{x^{22}}{22!} 
...
\dots
\end{autobreak}
\end{align}

cos(x) = ∑n=0 (- 1)n   x2n ⁄ (2n)! = x0 ⁄ 0! - x2 ⁄ 2! + x4 ⁄ 4! - x6 ⁄ 6! + x8 ⁄ 8! - x10 ⁄ 10! + x12 ⁄ 12! - x14 ⁄ 14! + x16 ⁄ 16! - x18 ⁄ 18!
+ x20 ⁄ 20! - x22 ⁄ 22! + x24 ⁄ 24! - x26 ⁄ 26! + x28 ⁄ 28! - x30 ⁄ 30! + x32 ⁄ 32! - x34 ⁄ 34! + x36 ⁄ 36! - x38 ⁄ 38!
+ x40 ⁄ 40! &dots;

Quelle: https://www.ctan.org/pkg/autobreak
Wir verwenden Cookies. Wenn Sie weiter auf unseren Seiten surfen, stimmen Sie der Nutzung von Cookies zu. mehr Informationen hier