\addvspace
\addvspace
ist eine LaTeX-Kern-Anweisung, um einen vertikalen Mindestabstand sicherzustellen.
Inhaltsverzeichnis
Verwendung
Syntax
\addvspace{Abstand}
Parameter
{Abstand}
-
- ist eine gültige TeX-Längenangabe, beispielsweise
- * ein Dezimalzahl mit einer gültigen Einheit und optionalem Leim (also – grob gesagt – mit
plus Vergrößerung minus Verkleinerung
), - * eine anderen LaTeX-Länge mit optionalem Faktor-Präfix,
- * eine TeX-Länge wie
\paperwidth
mit optionalem Faktor-Präfix, - * ein TeX-Abstand wie
\normalbaselineskip
mit optionalem Faktor-Präfix, - * ein TeX-Primitiv mit der Bedeutung eines Abstands oder einer Länge wie
\baselineskip
mit optionalem Faktor-Präfix, - * ein Längen-Ausdruck mit
\dimexpr
, - * ein Abstands-Ausdruck mit
\glueexpr
Beschreibung
Die Anweisung fügt bei Aufruf im vertikalen Modus, also zwischen Absätzen, einen vertikalen Abstand ein.
Im Unterschied zu \vspace
oder \vskip
addieren sich aufeinanderfolgende vertikale Abstände aber nicht. Stattdessen wird ein bereits vorhandener vertikaler Abstand mitberücksichtigt. Ist der vorherige Abstand kleiner als der neue Abstand, so wird dafür gesorgt, dass der effektive vertikale Abstand genau Abstand wird. Das gilt auch, wenn beide Abstände negativ sind. War der vorherige Abstand dagegen positiv und ist der neue Abstand negativ, so wird der effektive Abstand um den neuen Abstand verringert. War der vorherige Abstand positiv und der neue Abstand ist größer, so wird der neue Abstand zum effektiven Abstand.
Vereinfacht gesagt, wird sichergestellt, dass Abstand der vertikale Mindestabstand wird.
Eingesetzt wird dies beispielsweise in der Regel bei Überschriften, damit sich die vertikalen Abstände unter und über Überschriften bei unmittelbar aufeinanderfolgenden Überschriften nicht addieren. Die Anweisung ist auch in erster Linie für Paketautoren gedacht.
Fehlermeldungen
Wird \addvspace
im horizontalen Modus aufgerufen, so wird die Fehlermeldung
LaTeX Error: Something's wrong--perhaps a missing \item.
ausgegeben. Diese Fehlermeldung ist etwas verwirrend, falls man sich gar nicht in einer Liste befindet oder lediglich in einer Umgebung, die intern mit Hilfe einer Liste realisiert wurde. Ihr Ursprung ist jedoch, dass LaTeX an der Verwendung von internen \addvspace
-Anweisungen im horizontalen Modus erkennt, wenn in einer Liste Text ausgegeben wird, bevor ein \item
verwendet wurde, oder eine Liste ohne \item
wieder beendet wurde.
Beispiele
\documentclass{article}
\usepackage[ngerman]{babel}
\begin{document}
\section{Test}
\subsection{Toast}
Text
\section{Test2}
Text
Hier
\addvspace{1cm}\addvspace{1cm}
1\,cm Abstand,
\vspace{1cm}\vspace{1cm}
2\,cm Abstand.
\end{document}
Durch die interne Verwendung von \addvspace
für den Abstand über einer Überschrift, addieren sich die vertikalen Abstände unter der Überschrift »Test
« nicht mit denen über der Überschrift »Toast
«. Der Abstand ist genauso groß wie der zwischen »Test2
« und »Text
«. Auch die beiden \addvspace{1cm}
addieren ihre Abstände nicht, sondern fügen insgesamt einen Abstand von 1 cm ein. Dagegen fügen die beiden \vspace{1cm}
zusammen einen Abstand von 2 cm ein.
Verwandte Befehle
Verweise
Die Anweisung ist in den LaTeX-Quellen in Datei ltspace.dtx definiert und in source2e.pdf dokumentiert.