Es gibt zwei Varianten des automatischen Seitenumbruches in Latex, einmal mit vertikalem Ausgleich und einmal ohne Ausgleich.
flushbottom
Die Variante \flushbottom arbeitet mit einem vertikalen Ausgleich was dazu führt, dass die Seiten gleich lang werden.
raggedbottom
Die Variante \raggedbottom macht keinen vertikalen Ausgleich, was dazu führt, dass die Seiten unterschiedlich lang werden können.
1.1 flushbottom oder raggedbottom
Welche dieser Varianten verwendet wird hängt unter anderem davon ab, welche Dokumentenklasse verwendet wird, ob das Dokument in oneside oder twoside gesetzt wird und ob es sich um ein einspaltiges oder zweispaltiges Dokument handelt.
Dokumente bei denen die Option twoside gewählt wurde beziehungsweise Dokumente die per default in twoside gesetzt werden, verwenden in der Regel flushbottom.
Dokumente bei denen die Option oneside gewählt wurde beziehungsweise Dokumente die per default in oneside gesetzt werden, verwenden in der Regel raggedbottom.
Einstellung wenn die default Wert gesetzt sind
Klasse
flushbottom
raggedbottom
article
nein
ja
report
nein
ja
book
ja
nein
letter
nein
ja
1.2 manueller Seitenumbruch
Für den manuellen Seitenumbruch gibt es vier verschiedene Befehle:
newpage
Dort wo er gesetzt wird, wird die Seite umgebrochen. Dies erfolgt unabhängig davon, ob das Mitten im Satz und / oder Absatz ist.
pagebreak
Erst nachdem die aktuelle Zeile beendet ist erfolgt der Seitenumbruch. Auch kann es zu einem vertikalen Ausgleich auf der Vorderseite kommen. Der Befehl besitzt noch eine optionalen Wert, dieser kann zwischen 0 und 4 gesetzt werden. Der default Wert ist 4. Je höher der Wert gesetzt wird, desto wahrscheinlicher wird der Seitenumbruch gesetzt.
clearpage
Wird in einseitigen (oneside) Dokumenten verwendet. Verhält sich wie newpage, aber liefert vorher noch alle Gleitobjekte aus.
cleardoublepage
Wie clearpage nur für zweiseitige (twoside) Dokumente.
1.3 Seitenumbruch manuell verhindern
Um einen automatischen Seitenumbruch zu verhindern gibt es mehrere Möglichkeiten.
nopagebreak
Die erste ist die Verwendung des \nopagebreak Befehls dieser funktioniert ähnlich wie der pagebreak Befehl mit dem Unterschied, dass er abhängig vom Optionswert, default ist auch hier 4, den Umbruch an der Stelle wo er gesetzt wurde zu verhindern.
samepage
Die zweite ist die Verwendung der samepage Umgebung. Innerhalb einer samepage Umgebung kann ein Seitenumbruch nur noch zwischen zwei Absätzen erfolgen und nicht innerhalb eines Absatzes.
enlargethispage
Die dritte Möglichkeit ist die Verwendung des \enlargethispage{Groesse} beziehungsweise des \enlargethispage*{Groesse} Befehls. Auf der Seite wo dieser Befehl gesetzt wurde, wird die Texthöhe um die angegebene Größe vergrößert. Zum Beispiel \enlargethispage{\baselineskip} erlaubt eine zusätzliche Zeile. Die Sternvariante drückt zusätzlich den Inhalt so weit wie möglich zusammen.
1.4 Seitenumbruch in Gleichungen
Wenn innerhalb einer Gleichung ein Seitenumbruch erfolgen soll, kann bei Verwendung des amsmath Paketes auf den Befehl \displaybreak[Option] zurückgegriffen werden. Dieser Befehl ermöglicht es einen Seitenumbruch innerhalb einer Gleichung zu setzen. Der optionale Wert kann zwischen 0 und 4 liegen, der default Wert ist 4. Je höher der Wert desto wahrscheinlicher wird auch der Seitenumbruch gesetzt. Bei der Verwendung des Befehls ist darauf zu achten, dass sich seine Wirkung auf den nachfolgenden Zeilenumbruch bezieht. Siehe dazu auch das nachfolgende Beispiel.
& ...
{\sigma^{2}_{1} \sigma^{2}_{2}
\sigma^{2}}\right)\right)dv\\ \displaybreak
&=\frac{1}{2 \pi \sigma_{1} \sigma_{2}}
\int^{\infty}_{-\infty} \exp \left(-\frac{1}{2}\left(
...
\right)\right)dv\\ %<- Nach diesem Zeilenumbruch erfolgt der Seitenumbruch
2 needspace Paket
Das needspace Paket (Version 1.3d 2010) stellt zwei Befehle \needspace{Laenge} und \Needspace{Laenge} zur Verfügung, mit denen innerhalb eines bestimmten Bereichs ein Seitenumbruch verhindert wird. Im Fall, dass der Platz nicht ausreicht wird automatisch ein \newpage eingefügt.
2.1 Einbinden
Eingebunden wird das Paket mit \usepackage{needspace} und es verfügt zur Zeit über keine Optionen.
2.2 needspace
Der Unterschied zwischen beiden Befehlen ist, dass \needspace{Laenge} ungefähr den angegeben Platz für den nachfolgenden Inhalt auf der gleichen Seite bereit hält. Zudem erfolgt der Satz ohne vertikalen Ausgleich also mit raggedbottom auch wenn flushbottom gesetzt wurde.
2.3 Needspace
Der Befehl \Needspace{Laenge} hält genau den angegeben Platz für den nachfolgenden Inhalt auf der gleichen Seite bereit. Der Befehl sollt nur zwischen zwei Absätzen verwendet werden. Auch hier erfolgt der Satz ohne vertikalen Ausgleich (raggedbottom). Die Sternvariante des Befehls \Needspace*{Laenge} funktioniert analog, mit dem Unterschied, das wenn flushbottom gesetzt ist, zum Beispiel bei der Klasse book, es diesmal einen vertikalen Ausgleich gibt.
2.4 Beispiele
... Text ...
\needspace{4\baselineskip}
4 Zeilen mehr ...
...
... Text ...
\Needspace*{4\baselineskip}
4 Zeilen mehr ...
Nur diesmal mit vertikalem Ausgleich,
wenn flushbottom gesetzt ist