> For the complete documentation index, see [llms.txt](https://overleaf-pro.ayaka.space/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://overleaf-pro.ayaka.space/latex/de/formatierung/04-articles-how-to-change-paragraph-spacing-in-latex.md).

# Absatzformatierung

## Einführung

Dieser Artikel untersucht zwei Methoden, Änderungen an verschiedenen Aspekten des Absatzabstands vorzunehmen:

* die beste und empfohlene Methode ist die Verwendung von LaTeX-Paketen wie [`setspace`](https://ctan.org/pkg/setspace) und [`parskip`](https://ctan.org/pkg/parskip) die Optionen und Befehle auf Benutzerebene bereitstellen, um den Abstand Ihrer LaTeX-Dokumente zu ändern;
* Verwendung von TeX/LaTeX-Befehlen auf niedriger Ebene *Parameterbefehlen* um den Absatzabstand zu ändern. Die direkte Verwendung von Parameterbefehlen kann Prüfungen oder Kontrollen umgehen, die von sorgfältig entwickelten LaTeX-Paketen bereitgestellt werden, und möglicherweise andernorts in Ihrem LaTeX-Dokument zu unerwarteten Folgen/Nebeneffekten führen; verwenden Sie sie daher mit Vorsicht...

### Zu den relevanten Abschnitten springen

Leser, die nach schnellen Lösungen suchen:

* zum Abschnitt gehen [*Verwendung von LaTeX-Paketen: setspace und parskip*](#using-latex-packages-setspace-and-parskip)

Leser, die an Befehlen auf niedriger Ebene interessiert sind:

* zu den Abschnitten gehen [*TeX/LaTeX-Parameterbefehle*](#using-texlatex-parameter-commands) und [*Die Grundlagen: Parameterbefehle und Beispiele*](#the-fundamentals-parameter-commands-and-examples)

Leser, die an den feinen Details der Zeilenabstandsberechnung und der Absatzstruktur interessiert sind:

* zum Abschnitt gehen [*Absatzstruktur und Zeilenabstandsberechnungen*](#paragraph-structure-and-line-space-calculations)

## Verwendung von LaTeX-Paketen: setspace und parskip

* [das Paket parskip](#the-parskip-package)
* [das Paket setspace](#the-setspace-package)

### das Paket parskip

Das [`parskip` Paket](https://ctan.org/pkg/parskip?lang=en) hilft Ihnen, den zwischen Absätzen in Ihrem Dokument eingefügten Abstand sicher zu ändern. Es ist so konzipiert, dass Dokumentstrukturen wie Inhaltsverzeichnis, Listenumgebungen und abgesetzte Überschriften nicht durch einen von null verschiedenen Wert des [`\parskip` Befehls](#parskip-tex-primitive), mit dem die von TeX/LaTeX zwischen Absätzen eingefügte Abstandmenge festgelegt wird.

Das `parskip` Das Paket bietet keine Befehle auf Benutzerebene; stattdessen verwendet es Paketoptionen, um sein Verhalten zu konfigurieren. Die [`parskip` Dokumentation](https://mirror.ox.ac.uk/sites/ctan.org/macros/latex/contrib/parskip/parskip.pdf) ist kurz, nur drei Seiten, aber hier ist eine kurze Zusammenfassung der Paketoptionen:

* **`skip`**: gibt an `\parskip`, den vertikalen Abstand zwischen Absätzen;
* **`tocskip`**: gibt einen von null verschiedenen `\parskip` Wert zur Verwendung in `\tableofcontents` und ähnlichen Listen an;
* **`indent`**: legt den Wert von `\parindent`, die Absatz-Einrückung;
* **`parfill`**: passt den Wert von `\parfillskip`an, den am Ende der letzten Zeile eines Absatzes hinzugefügten Kleber.

Standardmäßig setzt das `parskip` Paket `\parindent` auf `0pt` und stellt einen von null verschiedenen `\parskip` Wert von `.5[\baselineskip](#baselineskip-tex-primitive) plus 2pt`.

#### Beispiele für das parskip-Paket

Die folgenden Beispiele zeigen einige Anwendungen des `parskip` Pakets. Wählen Sie die Links „Open in Overleaf“, um die Beispiele in Overleaf zu öffnen und zu kompilieren.

**Minimalbeispiel für das LaTeX-Paket parskip**

Das folgende Minimalbeispiel lädt das `parskip` Paket und setzt zwei Absätze, die mit dem [`blindtext` Paket](https://ctan.org/pkg/blindtext?lang=en). Das Beispiel setzt außerdem die Standardwerte von `\baselineskip`, `\parskip` und `\parindent`. Der Abstand zwischen den beiden Absätzen wird durch den Wert von `\parskip`:

```latex
\documentclass{article}
Wählen Sie eine praktisch kleine Seitengröße
\usepackage[paperheight=16cm,paperwidth=14cm,textwidth=12cm]{geometry}
blindtext-Paket für Platzhaltertext laden
\usepackage{blindtext}
parskip-Paket ohne Optionen laden
\usepackage{parskip}
\begin{document}

\blindtext[1]\par %Verwenden Sie \par, um einen neuen Absatz zu erzwingen
\blindtext[1]

Der Wert von \verb|\parindent| ist \texttt{\the\parindent}. Hier sind die anderen Werte:

\begin{itemize}
\item Der Wert von \verb|\baselineskip| ist \texttt{\the\baselineskip}
\item Der Wert von \verb|\parskip| ist \texttt{\the\parskip}
\end{itemize}
\end{document}
```

&#x20;[Öffnen Sie dieses Beispiel in Overleaf](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=Example+use+of+the+parskip+package\&snip=%5Cdocumentclass%7Barticle%7D%0A%25+Choose+a+conveniently+small+page+size%0A%5Cusepackage%5Bpaperheight%3D16cm%2Cpaperwidth%3D14cm%2Ctextwidth%3D12cm%5D%7Bgeometry%7D%0A%25+Load+blindtext+package+for+dummy+text%0A%5Cusepackage%7Bblindtext%7D%0A%25+Load+the+parskip+package+without+options%0A%5Cusepackage%7Bparskip%7D%0A%5Cbegin%7Bdocument%7D%0A%0A%5Cblindtext%5B1%5D%5Cpar+%25Use+%5Cpar+to+force+a+new+paragraph%0A%5Cblindtext%5B1%5D%0A%0AThe+value+of+%5Cverb%7C%5Cparindent%7C+is+%5Ctexttt%7B%5Cthe%5Cparindent%7D.+Here+are+the+other+values%3A%0A%0A%5Cbegin%7Bitemize%7D%0A%5Citem+The+value+of+%5Cverb%7C%5Cbaselineskip%7C+is+%5Ctexttt%7B%5Cthe%5Cbaselineskip%7D%0A%5Citem+The+value+of+%5Cverb%7C%5Cparskip%7C+is+%5Ctexttt%7B%5Cthe%5Cparskip%7D%0A%5Cend%7Bitemize%7D%0A%5Cend%7Bdocument%7D)

Dieses Beispiel erzeugt die folgende Ausgabe:

![Beispiel für die Verwendung des LaTeX-Pakets parskip](/files/79c1f02e67fea41c706d52ba5c253fdf56733a8b)

Beachten Sie, dass `\parskip` Kleber enthält typischerweise eine dehnbare [Kleberkomponente](#a-few-notes-on-glue) , da dies LaTeX dabei hilft, Inhalt auf die Seite anzupassen und die besten (optimalen) Seitenumbrüche zu erzeugen.

**Verwendung von parskip-Paketoptionen**

Das folgende Beispiel lädt und konfiguriert das `parskip` Paket unter Verwendung der `skip` und `indent` Optionen. Es setzt außerdem zwei Absätze mithilfe der [`blindtext` Paket](https://ctan.org/pkg/blindtext?lang=en), und setzt die Werte von `\baselineskip`, `\parskip` und `\parindent`.

```latex
\documentclass{article}
Wählen Sie eine praktisch kleine Seitengröße
\usepackage[paperheight=18cm,paperwidth=14cm,textwidth=12cm]{geometry}
blindtext-Paket für Platzhaltertext laden
\usepackage{blindtext}
% Laden Sie das parskip-Paket mit den Optionen skip und indent
\usepackage[skip=10pt plus1pt, indent=40pt]{parskip}
\begin{document}

\blindtext[1]\par % Verwenden Sie \par, um einen neuen Absatz zu erzwingen
\blindtext[1]

Der Wert von \verb|\parindent| wurde über die Option \texttt{indent} gesetzt, also ist er jetzt \texttt{\the\parindent}. Die anderen Werte sind:

\begin{itemize}
\item \verb|\baselineskip| ist \texttt{\the\baselineskip}
\item \verb|\parskip| wurde über die Option \texttt{skip} gesetzt, daher ist sein Wert \texttt{\the\parskip}
\end{itemize}
\end{document}
```

&#x20;[Öffnen Sie dieses Beispiel in Overleaf](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=Example+use+of+the+parskip+package\&snip=%5Cdocumentclass%7Barticle%7D%0A%25+Choose+a+conveniently+small+page+size%0A%5Cusepackage%5Bpaperheight%3D18cm%2Cpaperwidth%3D14cm%2Ctextwidth%3D12cm%5D%7Bgeometry%7D%0A%25+Load+blindtext+package+for+dummy+text%0A%5Cusepackage%7Bblindtext%7D%0A%25+Load+the+parskip+package+with+skip+and+indent+options%0A%5Cusepackage%5Bskip%3D10pt+plus1pt%2C+indent%3D40pt%5D%7Bparskip%7D%0A%5Cbegin%7Bdocument%7D%0A%0A%5Cblindtext%5B1%5D%5Cpar+%25+Use+%5Cpar+to+force+a+new+paragraph%0A%5Cblindtext%5B1%5D%0A%0AThe+value+of+%5Cverb%7C%5Cparindent%7C+was+set+via+the+%5Ctexttt%7Bindent%7D+option%2C+so+it+is+now+%5Ctexttt%7B%5Cthe%5Cparindent%7D.+The+other+values+are%3A%0A%0A%5Cbegin%7Bitemize%7D%0A%5Citem+%5Cverb%7C%5Cbaselineskip%7C+is+%5Ctexttt%7B%5Cthe%5Cbaselineskip%7D%0A%5Citem+%5Cverb%7C%5Cparskip%7C+was+set+via+the+%5Ctexttt%7Bskip%7D+option%2C+so+its+value+is+%5Ctexttt%7B%5Cthe%5Cparskip%7D%0A%5Cend%7Bitemize%7D%0A%5Cend%7Bdocument%7D)

Dieses Beispiel erzeugt die folgende Ausgabe:

![Ein zweites Anwendungsbeispiel für das LaTeX-Paket parskip](/files/8df08d182273e985bfd7325a4fc5ef8d9a77a2ac)

### das Paket setspace

Das [`setspace` Paket](https://ctan.org/pkg/setspace?lang=en) stellt Befehle und Umgebungen bereit, um den Zeilenabstand Ihres Dokuments zu ändern. Hier ist eine kurze Zusammenfassung der wichtigsten Befehle und Umgebungen, die von `setspace`:

* den Befehlen **`\singlespacing`**, **`\onehalfspacing`** und **`\doublespacing`** können in der Dokumentpräambel oder im Dokumentkörper verwendet werden, um den Abstand teilweise oder vollständig zu ändern;
* die **`\setstretch{*baselinestretch amount*}`** Befehl einen benutzerdefinierten Abstand fest (über Änderungen an [`\baselinestretch`](#demonstrating-baselinestretch))—er kann auch in der Dokumentpräambel verwendet werden;
* die Umgebungen **`singlespace`**, **`singlespace*`** **`onehalfspace`** und **`doublespace`** erlauben es, den Zeilenabstand für ausgewählte Teile des Dokumenttexts zu ändern;
* die **`\SetSinglespace{*value*}`** Befehl verwendet `*value*` , um den Einzeilenabstand anzupassen, damit der Zeilenabstand von Text, der mit Schriften gesetzt wird, deren Zeichenformen („Glyphen“) für die angegebene Punktgröße relativ klein oder groß sind, berücksichtigt wird. Siehe den Abschnitt [*Kurze Hinweise zu Schriften und Punktgröße*](#brief-notes-on-fonts-and-point-size) für eine Abbildung, die die Variation der Größe von Schrift-Glyphen bei einer gegebenen Punktgröße zeigt;
* die **`spacing`** -Umgebung bietet benutzerdefinierten Abstand und erfordert ein Argument: den [`\baselinestretch` Wert](#demonstrating-baselinestretch) zur Verwendung; zum Beispiel:

```latex
\begin{spacing}{2.5}
...
...
\end{spacing}
```

#### Beispiele für das setspace-Paket

Die folgenden Beispiele zeigen einige Anwendungen des `setspace` Paket: Klicken Sie auf die Links „Open in Overleaf“, um die Beispiele in Overleaf zu öffnen und zu kompilieren.

**Verwendung von \doublespacing in der Dokumentpräambel**

```latex
\documentclass{article}
Wählen Sie eine praktisch kleine Seitengröße
\usepackage[paperheight=18cm,paperwidth=14cm,textwidth=12cm]{geometry}
blindtext-Paket für Platzhaltertext laden
\usepackage{blindtext}
% Laden Sie das setspace-Paket
\usepackage{setspace}
% Verwendung von \doublespacing in der Präambel
% ändert den Text auf doppelten Zeilenabstand
\doublespacing
\begin{document}
\blindtext[1]
\end{document}
```

&#x20;[Öffnen Sie dieses `setspace` Beispiel in Overleaf.](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=Example+use+of+the+doublespacing+command\&snip=%5Cdocumentclass%7Barticle%7D%0A%25+Choose+a+conveniently+small+page+size%0A%5Cusepackage%5Bpaperheight%3D18cm%2Cpaperwidth%3D14cm%2Ctextwidth%3D12cm%5D%7Bgeometry%7D%0A%25+Load+blindtext+package+for+dummy+text%0A%5Cusepackage%7Bblindtext%7D%0A%25+Load+the+setspace+package%0A%5Cusepackage%7Bsetspace%7D%0A%25+Using+%5Cdoublespacing+in+the+preamble+%0A%25+changes+text+to+double+line+spacing%0A%5Cdoublespacing%0A%5Cbegin%7Bdocument%7D%0A%5Cblindtext%5B1%5D%0A%5Cend%7Bdocument%7D)

Dieses Beispiel erzeugt die folgende Ausgabe:

![Beispiel für den setspace-Befehl \doublespacing](/files/d2f09a8e9bb36c88c920e4399ff2b976ae13e0df)

**Verwendung der spacing-Umgebung**

Da der folgende Code 3 Seiten setzt, ist es vorzuziehen, die Ausgabe in Overleaf anzusehen, indem Sie den unten angegebenen Link „Open in Overleaf“ auswählen.

```latex
\documentclass{article}
Wählen Sie eine praktisch kleine Seitengröße
\usepackage[paperheight=18cm,paperwidth=14cm,textwidth=12cm]{geometry}
blindtext-Paket für Platzhaltertext laden
\usepackage{blindtext}
% Laden Sie das setspace-Paket
\usepackage{setspace}
% Verwendung von \doublespacing in der Präambel
% ändert den Text auf doppelten Zeilenabstand
\doublespacing
\begin{document}
\blindtext[1]

Wenden Sie nun einen größeren (benutzerdefinierten) Abstand an, indem Sie einen \verb|\baselinestretch|-Wert von 3 verwenden:

\begin{verbatim}
\begin{spacing}{3}
\blindtext[1]
\end{spacing}
\end{verbatim}

\begin{spacing}{2.5}
\blindtext[1]
\end{spacing}
Jetzt zurück zu \verb|\singlespacing|\singlespacing\blindtext[1]
\end{document}
```

&#x20;[Öffnen Sie dieses `setspace` Beispiel in Overleaf.](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=Example+use+of+various+setspace+commands\&snip=%5Cdocumentclass%7Barticle%7D%0A%25+Choose+a+conveniently+small+page+size%0A%5Cusepackage%5Bpaperheight%3D18cm%2Cpaperwidth%3D14cm%2Ctextwidth%3D12cm%5D%7Bgeometry%7D%0A%25+Load+blindtext+package+for+dummy+text%0A%5Cusepackage%7Bblindtext%7D%0A%25+Load+the+setspace+package%0A%5Cusepackage%7Bsetspace%7D%0A%25+Using+%5Cdoublespacing+in+the+preamble+%0A%25+changes+text+to+double+line+spacing%0A%5Cdoublespacing%0A%5Cbegin%7Bdocument%7D%0A%5Cblindtext%5B1%5D%0A%0ANow%2C+apply+a+larger+%28custom%29+spacing+by+applying+a+%5Cverb%7C%5Cbaselinestretch%7C+value+of+3%3A%0A%0A%5Cbegin%7Bverbatim%7D%0A%5Cbegin%7Bspacing%7D%7B3%7D%0A%5Cblindtext%5B1%5D%0A%5Cend%7Bspacing%7D%0A%5Cend%7Bverbatim%7D%0A%0A%5Cbegin%7Bspacing%7D%7B2.5%7D%0A%5Cblindtext%5B1%5D%0A%5Cend%7Bspacing%7D%0ANow%2C+revert+to+%5Cverb%7C%5Csinglespacing%7C%5Csinglespacing%5Cblindtext%5B1%5D%0A%5Cend%7Bdocument%7D)

**Verwendung der singlespace\*-Umgebung**

Wie im Artikel erwähnt [*Kurzer Hinweis zum Zeilenabstand*](https://texblog.org/2011/09/30/quick-note-on-line-spacing/), das `setspace` Paket stellt sternförmige (`singlespace*`) und nicht sternförmige Versionen der `singlespace` Umgebung bereit. Kommentare im `setspace` Paketcode weisen darauf hin, dass die `singlespace*` Umgebung so entworfen ist, „... einen verbesserten vertikalen Abstand um itemize- und quote-Umgebungen herum zu bieten“.

Das folgende Beispiel verwendet Aufzählungslisten in zwei `minipage` -Umgebungen, nebeneinander platziert, um den unterschiedlichen Abstand zu demonstrieren, der von den `singlespace` und `singlespace*` Umgebungen erzeugt wird.

```latex
\doublespacing
\blindtext[1]

\begin{minipage}{.4\textwidth}
\begin{singlespace}
Hier ist eine Aufzählungsliste\par (\texttt{singlespace}-Umgebung).
\begin{itemize}
\item Eins
\item Zwei
\item Drei
\end{itemize}
\end{singlespace}%
Die Liste ist beendet.
\end{minipage}\kern10pt%
\begin{minipage}{.4\textwidth}
\begin{singlespace*}
Hier ist eine Aufzählungsliste\par (\texttt{singlespace*}-Umgebung).
\begin{itemize}
\item Eins
\item Zwei
\item Drei
\end{itemize}
\end{singlespace*}
Die Liste ist beendet.
\end{minipage}
```

&#x20;[Öffnen Sie dieses `setspace` Beispiel in Overleaf](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=Example+of+the+starred+singlespace+environment\&snip=%5Cdocumentclass%7Barticle%7D%0A%5Cusepackage%7Bsetspace%7D%0A%5Cusepackage%7Bblindtext%7D%0A%5Cbegin%7Bdocument%7D%0A%5Cdoublespacing+%0A%5Cblindtext%5B1%5D%0A%0A%5Cbegin%7Bminipage%7D%7B.4%5Ctextwidth%7D%0A%5Cbegin%7Bsinglespace%7D%0AHere+is+a+bulleted+list%5Cpar+%28%5Ctexttt%7Bsinglespace%7D+environment%29.%0A%5Cbegin%7Bitemize%7D%0A%5Citem+One%0A%5Citem+Two%0A%5Citem+Three%0A%5Cend%7Bitemize%7D%0A%5Cend%7Bsinglespace%7D%25%0AThe+list+has+ended.%0A%5Cend%7Bminipage%7D%5Ckern10pt%25%0A%5Cbegin%7Bminipage%7D%7B.4%5Ctextwidth%7D%0A%5Cbegin%7Bsinglespace%2A%7D%0AHere+is+a+bulleted+list%5Cpar+%28%5Ctexttt%7Bsinglespace%2A%7D+environment%29.%0A%5Cbegin%7Bitemize%7D%0A%5Citem+One%0A%5Citem+Two%0A%5Citem+Three%0A%5Cend%7Bitemize%7D%0A%5Cend%7Bsinglespace%2A%7D%0AThe+list+has+ended.%0A%5Cend%7Bminipage%7D%0A%5Cend%7Bdocument%7D)

Dieses Beispiel erzeugt die folgende Ausgabe:

![Beispiel für die LaTeX-Umgebung singlespace\*](/files/874c0d7063bdf741fcaa4b16d6f4fe79dc6c04da)

**Verwendung des Befehls \setstretch**

`\setstretch{*value*}` setzt den Wert von `\baselinestretch` auf *Wert* und löst eine *sofortige* Änderung in `\baselineslip` verursacht durch `\baselinestretch`. Das folgende Beispiel verwendet `\setstretch{1.618}`—der ungewöhnliche Wert 1.618 wird [später im Artikel erklärt](#understanding-and-calculating-values-for-baselinestretch)...

```latex
% Der ungewöhnliche Wert 1.618 wird später im Artikel erklärt.
\setstretch{1.618}
Wir schreiben \verb|\setstretch{1.618}|, um eine sofortige Änderung des Zeilenabstands zu bewirken. Wenn wir \verb|\renewcommand{\baselinestretch}{1.618}| schreiben würden, würde der Zeilenabstand erst geändert, wenn ein schriftändernder Befehl wie \verb|\selectfont| verwendet wird.

\blindtext[1]
```

&#x20;[Öffnen Sie dieses `setspace` Beispiel in Overleaf.](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=Example+use+of+the+setstretch+command\&snip=%5Cdocumentclass%5B11pt%5D%7Barticle%7D%0A%25+Choose+a+conveniently+small+page+size%0A%5Cusepackage%5Bpaperheight%3D18cm%2Cpaperwidth%3D14cm%2Ctextwidth%3D12cm%5D%7Bgeometry%7D%0A%25+Load+blindtext+package+for+dummy+text%0A%5Cusepackage%7Bblindtext%7D%0A%25+Load+the+setspace+package%0A%5Cusepackage%7Bsetspace%7D%0A%5Cbegin%7Bdocument%7D%0A%25+The+strange+figure+of+1.618+is+explained+later+in+the+article.%0A%5Csetstretch%7B1.618%7D%0AWe+write+%5Cverb%7C%5Csetstretch%7B1.618%7D%7C+to+cause+an+immediate+change+to+the+line+spacing.+If+we+wrote+%5Cverb%7C%5Crenewcommand%7B%5Cbaselinestretch%7D%7B1.618%7D%7C+the+line+spacing+would+not+be+modified+until+a+font-changing+command%2C+such+as+%5Cverb%7C%5Cselectfont%7C%2C+is+used.%0A%0A%5Cblindtext%5B1%5D%0A%5Cend%7Bdocument%7D)

Dieses Beispiel erzeugt die folgende Ausgabe:

![Beispiel für den Befehl \setstretch](/files/e1d214ba7b43804ee698d560ddc73b45ca6bff0e)

**Verwendung des Befehls \SetSinglespace**

Das folgende Projekt wird mit LuaLaTeX kompiliert und verwendet das `fontspec` Paket, um auf die TeX-Gyre-Pagella-Schriften zuzugreifen. Es vergleicht zwei Absätze Text, gesetzt in TeX Gyre Pagella: Der erste Absatz verwendet den standardmäßigen einfachen Zeilenabstand und der zweite hat einen größeren einfachen Zeilenabstand aufgrund der Anwendung von `\SetSinglespace{1.1}`. Manche bevorzugen vielleicht den zweiten, etwas „luftiger“ gesetzten Absatz und empfinden ihn als angenehmer zu lesen, aber das ist natürlich eine Frage der persönlichen Vorliebe.

```latex
\section*{Standardmäßiger einfacher Zeilenabstand von Computer Modern}
Ein normaler Text. \blindtext[1]
\setmainfont{TeX Gyre Pagella}
\section*{Standardmäßiger einfacher Zeilenabstand von TeX Gyre Pagella}
Hier ist etwas normaler Text. \blindtext[1]
\section*{Angepasster einfacher Zeilenabstand von TeX Gyre Pagella}
Hinweis: Wir müssen \verb|\singlespacing| ausgeben, nachdem wir
\verb|\SetSinglespace{1.1}|\SetSinglespace{1.1}\singlespacing
\begin{singlespace*}
Hier ist etwas normaler Text. \blindtext[1]
\end{singlespace*}
```

&#x20;[Öffnen Sie dieses `setspace` Beispiel in Overleaf.](https://www.overleaf.com/docs?engine=lualatex\&snip_name=Example+use+of+the+SetSinglespace+command\&snip=%5Cdocumentclass%7Barticle%7D%0A%5Cusepackage%7Bfontspec%7D%0A%5Cusepackage%7Bblindtext%7D%0A%5Cusepackage%7Bsetspace%7D%0A%5Cbegin%7Bdocument%7D%0A%5Csection%2A%7BComputer+Modern+default+single+spacing%7D%0ASome+regular+text.+%5Cblindtext%5B1%5D%0A%5Csetmainfont%7BTeX+Gyre+Pagella%7D%0A%5Csection%2A%7BTeX+Gyre+Pagella+default+single+line+spacing%7D%0AHere+is+some+regular+text.+%5Cblindtext%5B1%5D%0A%5Csection%2A%7BTeX+Gyre+Pagella+adjusted+single+line+spacing%7D%0ANote%3A+we+need+to+issue+%5Cverb%7C%5Csinglespacing%7C+after+writing++%0A%5Cverb%7C%5CSetSinglespace%7B1.1%7D%7C%5CSetSinglespace%7B1.1%7D%5Csinglespacing%0A%5Cbegin%7Bsinglespace%2A%7D+%0AHere+is+some+regular+text.+%5Cblindtext%5B1%5D%0A%5Cend%7Bsinglespace%2A%7D%0A%5Cend%7Bdocument%7D)

Dieses Beispiel erzeugt die folgende Ausgabe:

![Demonstration des LaTeX-Befehls \SetSinglespace](/files/5b804e84bd1d08abd0c362c98082ca1db538cf0a)

Im nächsten Abschnitt überprüfen wir die Befehle `\baselinestretch` und `\linespread`.

#### Verständnis von \baselinestretch und \linespread

Ein Teil von LaTeXs Konzept zum Umgang mit Zeilenabstand und Schriftänderungen (Schriftgröße, Schriftfamilie, Schriftkodierung usw.) verwendet zwei Befehle, denen Sie begegnen könnten:

* **`\baselinestretch`**: Dieser Befehl speichert einen Skalierungsfaktor, mit dem der aktuelle Wert von multipliziert (skaliert) wird [`\baselineskip`](#baselineskip-tex-primitive). Diese Skalierung wird typischerweise beim *beim nächsten Mal* ein Schriftwahlbefehl verwendet wird—etwa `\selectfont`. Um den von `\baselinestretch` gespeicherten Wert zu ändern, sollten Sie schreiben `\renewcommand{\baselinestretch}{*scale*}`
  * **Hinweis**: Wenn Sie `\renewcommand{\baselinestretch}{*scale*}` im Dokumentkörper schreiben, wird der neue Wert von `\baselinestretch` [nicht sofort wirksam](https://tex.stackexchange.com/questions/241120/why-does-changing-baselinestretch-not-change-line-spacing): der neue `*scale*` Faktor wird für die zukünftige Verwendung gespeichert. Um den neuen`*scale*` Wert sofort zu verwenden/anuwenden, schreiben Sie `\selectfont` wie im [unten stehenden Codeausschnitt demonstriert](#demonstrating-baselinestretch).
* **`\linespread{*scale*}`**: kann verwendet werden, um [`\baselineskip`](#baselineskip-tex-primitive) zu ändern, ohne die aktuelle Schriftgröße zu beeinflussen. Dieser Befehl setzt `\baselinestretch` auf `*scale*` was anschließend `\baselineskip` auf `*scale* × [\baselineskip](#baselineskip-tex-primitive)`. Allerdings erfolgt auch diese Skalierung nicht sofort, es sei denn, der `\linespread` Befehl wird in der Dokumentpräambel verwendet. Wenn `\linespread` er im Dokumentkörper verwendet wird, wird er wirksam, nachdem der nächste Befehl zur Schriftgrößen-/Schriftauswahl verwendet wurde.

Auf Grundlage des Obigen kann entweder:

* `\renewcommand{\baselinestretch}{*scale*}\selectfont` oder,
* `\linespread{*scale*}\selectfont`

verwendet werden, um den Zeilenabstand zu ändern, und beide funktionieren über Änderungen der Schriftgröße hinweg, wie im folgenden Beispiel gezeigt wird. Welche sollten Sie also verwenden? Siehe [diese kurze Diskussion auf tex.stackexchange](https://tex.stackexchange.com/a/241121).

**Demonstration von \linespread**

Das folgende Beispiel verwendet `\linespread{2.5}` in der Dokumentpräambel, was den Zeilenabstand ändert, ohne zusätzliche Befehle zur Schriftauswahl zu erfordern:

```latex
\documentclass{article}
Wählen Sie eine praktisch kleine Seitengröße
\usepackage[paperheight=18cm,paperwidth=14cm,textwidth=12cm]{geometry}
blindtext-Paket für Platzhaltertext laden
\usepackage{blindtext}
% Die Verwendung von \linespread in der Präambel ändert
% den Zeilenabstand, ohne zusätzliche
% Befehle zur Schriftauswahl wie \selectfont zu erfordern
\linespread{2.5}
\begin{document}
\blindtext[1] % Die Zeilen werden durch \linespread{2.5} beeinflusst
\end{document}
```

&#x20;[Öffnen Sie dieses Beispiel in Overleaf](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=Example+use+of+the+linestretch+command\&snip=%5Cdocumentclass%7Barticle%7D%0A%25+Choose+a+conveniently+small+page+size%0A%5Cusepackage%5Bpaperheight%3D18cm%2Cpaperwidth%3D14cm%2Ctextwidth%3D12cm%5D%7Bgeometry%7D%0A%25+Load+blindtext+package+for+dummy+text%0A%5Cusepackage%7Bblindtext%7D%0A%25+Using+%5Clinespread+in+the+preamble+changes+%0A%25+line+spacing+without+requiring+additional%0A%25+font-selection+commands%2C+such+as+%5Cselectfont%0A%5Clinespread%7B2.5%7D+%0A%5Cbegin%7Bdocument%7D%0A%5Cblindtext%5B1%5D+%25+The+lines+are+affected+by+%5Clinespread%7B2.5%7D%0A%5Cend%7Bdocument%7D)

Dieses Beispiel erzeugt die folgende Ausgabe:

![Verwendung des Befehls linespread](/files/ef8970b32d17b872cfd913844337d906c620b3ac)

Verwendung von `\linespread{2.5}` im Dokumentkörper (nach `\begin{document}`) *würde* Befehle zur Schriftauswahl erfordern, um die Änderung des Zeilenabstands auszulösen. Öffnen Sie den folgenden Code in Overleaf und vergleichen Sie die Ausgabe mit dem vorherigen Beispiel:

```latex
Da der folgende \verb|\linespread|-Befehl im Dokumentkörper verwendet wird, ist ein Befehl zur Schriftauswahl erforderlich, um den Zeilenabstand zu ändern. Kommentieren Sie \verb|\selectfont| ein, um den Unterschied zu sehen:

\linespread{2.5}%\selectfont

% Ohne \selectfont sind die folgenden Absatzzeilen
% unverändert durch \linespread{2.5}:
\blindtext[1]
```

&#x20;[Öffnen Sie dieses Beispiel in Overleaf](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=Second+example+using+the+linestretch+command\&snip=%5Cdocumentclass%7Barticle%7D%0A%25+Choose+a+conveniently+small+page+size%0A%5Cusepackage%5Bpaperheight%3D18cm%2Cpaperwidth%3D14cm%2Ctextwidth%3D12cm%5D%7Bgeometry%7D%0A%25+Load+blindtext+package+for+dummy+text%0A%5Cusepackage%7Bblindtext%7D%0A%5Cbegin%7Bdocument%7D%0ABecause+the+following+%5Cverb%7C%5Clinespread%7C+command+is+used+in+the+document+body%2C+a+font-selection+command+is+required+to+change+the+line+spacing.+Un-comment+%5Cverb%7C%5Cselectfont%7C+to+see+the+difference%3A%0A%0A%5Clinespread%7B2.5%7D%25%5Cselectfont%0A+%0A%25+Without+%5Cselectfont+the+following+paragraph+lines+are+%0A%25+unaffected+affected+by+%5Clinespread%7B2.5%7D%3A+%0A%5Cblindtext%5B1%5D%0A%5Cend%7Bdocument%7D)

Dieses Beispiel erzeugt die folgende Ausgabe:

![Verwendung des LaTeX-Befehls \linespread im Dokument](/files/1cf533c3d7f6d9731f9d3a59c10f98c02ea9ac9d)

**Demonstration von \baselinestretch**

Das folgende Beispiel zeigt `\baselinestretch` und `\selectfont` um die entsprechenden Auswirkungen auf [`\baselineskip`](#baselineskip-tex-primitive):

```latex
Der Standardwert von \verb|\baselineskip|=\the\baselineskip. Aktualisieren Sie nun \verb|\baselinestretch|\renewcommand\baselinestretch{2.5}. Obwohl wir jedoch ausgeführt haben

\vspace{5pt}
\verb|\renewcommand\baselinestretch{2.5}|
\vspace{5pt}

\noindent hat es (noch) \textit{keine} Wirkung gezeigt: Der neue Wert von \verb|\baselinestretch| wird gespeichert, aber nicht angewendet. Wir können einen \verb|\selectfont|-Befehl ausführen, damit die Änderung wirksam wird; aber vorerst ist der Wert von \verb|\baselineskip| immer noch \the\baselineskip{} (unverändert).

Wenn wir nun \verb|\selectfont| ausführen, wird die Änderung von \verb|\baselinestretch| auf 2.5 jetzt wirksam---\selectfont obwohl wir uns mitten in einem Absatz befinden. Nun ist der Wert von \verb|\baselineskip| \the\baselineskip{} (= \(2.5 \times 12=30\mathrm{pt}\)).

Was passiert, wenn wir die Schriftgröße mit den Befehlen \verb|\fontsize{14}{16}\selectfont| auf 14pt und \verb|\baselineskip| auf 16pt ändern?

\fontsize{14}{16}\selectfont Nun ist \verb|\baselineskip| \textit{nicht} 16pt, sondern \the\baselineskip{} weil der Wert von  \verb|\baselinestretch| (2.5) beibehalten und angewendet wurde, wodurch \verb|\baselineskip| = \(2.5 \times 16=40\mathrm{pt}\) ergibt.

\section{\texttt{\bfseries\string\linespread}}
Der \verb|\linespread|-Befehl kann verwendet werden, um \verb|\baselineskip| zu ändern, ohne die Schriftgröße zu ändern.
```

&#x20;[Öffnen Sie dieses Beispiel in Overleaf](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=Demonstrating+baselinestretch\&snip=%5Cdocumentclass%7Barticle%7D%0A%25+Choose+a+conveniently+small+page+size%0A%5Cusepackage%5Bpaperheight%3D18cm%2Cpaperwidth%3D16cm%2Ctextwidth%3D14cm%5D%7Bgeometry%7D%0A%5Cusepackage%7Bsetspace%7D%0A%5Cbegin%7Bdocument%7D%0AThe+default+value+of+%5Cverb%7C%5Cbaselineskip%7C%3D%5Cthe%5Cbaselineskip.+Now+update+%5Cverb%7C%5Cbaselinestretch%7C%5Crenewcommand%5Cbaselinestretch%7B2.5%7D.+However%2C+although+we+have+executed%0A%0A%5Cvspace%7B5pt%7D%0A%5Cverb%7C%5Crenewcommand%5Cbaselinestretch%7B2.5%7D%7C+%0A%5Cvspace%7B5pt%7D%0A%0A%5Cnoindent+it+%5Ctextit%7Bhas+not%7D+%28yet%29+had+any+effect%3A+the+new+value+of+%5Cverb%7C%5Cbaselinestretch%7C+is+stored%2C+but+not+actioned.+We+can+issue+a+%5Cverb%7C%5Cselectfont%7C+command+to+make+the+change+take+effect%3B+but%2C+for+now%2C+the+value+of+%5Cverb%7C%5Cbaselineskip%7C+is+still+%5Cthe%5Cbaselineskip%7B%7D+%28unchanged%29.+%0A%0AIf+we+now+execute+%5Cverb%7C%5Cselectfont%7C+the+change+to+%5Cverb%7C%5Cbaselinestretch%7C%2C+setting+it+to+2.5%2C+will+now+take+effect---%5Cselectfont+even+though+we+are+in+the+middle+of+a+paragraph.+Now%2C+the+value+of+%5Cverb%7C%5Cbaselineskip%7C+is+%5Cthe%5Cbaselineskip%7B%7D+%28%3D+%5C%282.5+%5Ctimes+12%3D30%5Cmathrm%7Bpt%7D%5C%29%29.%0A%0AWhat+happens+if+we+change+the+font+size+to+14pt+and+%5Cverb%7C%5Cbaselineskip%7C+to+16pt+using+the+commands+%5Cverb%7C%5Cfontsize%7B14%7D%7B16%7D%5Cselectfont%7C%3F+%0A%0A%5Cfontsize%7B14%7D%7B16%7D%5Cselectfont+Now%2C+%5Cverb%7C%5Cbaselineskip%7C+is+%5Ctextit%7Bnot%7D+16pt+but+%5Cthe%5Cbaselineskip%7B%7D+because+the+value+of++%5Cverb%7C%5Cbaselinestretch%7C+%282.5%29+has+been+preserved+and+applied%2C+giving+%5Cverb%7C%5Cbaselineskip%7C+%3D+%5C%282.5+%5Ctimes+16%3D40%5Cmathrm%7Bpt%7D%5C%29.%0A%0A%5Csection%7B%5Ctexttt%7B%5Cbfseries%5Cstring%5Clinespread%7D%7D%0AThe+%5Cverb%7C%5Clinespread%7C+command+can+be+used+to+modify+%5Cverb%7C%5Cbaselineskip%7C+without+changing+the+font+size.%0A%5Cend%7Bdocument%7D)

Dieses Beispiel erzeugt die folgende Ausgabe:

![Demonstration von baselinestretch](/files/a2f8e1da72ef745449c753b39b9d8402f0788f8e)

#### Wie wird „Zeilenabstand“ im setspace-Paket definiert und geändert?

Das *genaue* Definition und *Messung* von „Zeilenabstand“ ist Interpretationssache, was zu verschiedenen Implementierungen in Softwaresystemen/-anwendungen führen kann. Offensichtlich muss das `setspace` Paket eine Arbeitsdefinition von Zeilenabstand annehmen, damit es Unterstützung für das Setzen von „einfach“ und „doppelt“ zeilenabständigen Zeilen oder jedem anderen Vielfachen des Zeilenabstands bereitstellen kann. Aber welche Variablen werden von `setspace` geändert, um Zeilen mit unterschiedlichen Mengen an Weißraum dazwischen zu erzeugen?

Glücklicherweise [Diskussionen auf tex.stackexchange](https://tex.stackexchange.com/a/30106) und [Kommentare im Paketcode](https://tex.stackexchange.com/a/632830) erläutern, wie `setspace` das Zeilenabstand implementiert: Es setzt den Wert von `\baselineskip` unter Verwendung eines Vielfachen der Punktgröße der Schrift.

**Kurze Hinweise zu Schriften und Punktgröße**

Schriften in einer bestimmten Punktgröße zu verwenden bedeutet, einen *Skalierungsfaktor* auf die Zeichenformen (Glyphen) dieser Schriften anzuwenden; nach der Skalierung entsprechend der Punktgröße ist die sichtbare Größe des Zeichens eine Funktion des Schriftentwurfs (Schriftart). Die Punktgröße hat keinen allgemeinen, festen Zusammenhang mit der tatsächlichen Anzeigengröße der Zeichenformen in Schriften.

Das folgende Bild zeigt Kleinbuchstaben „abc“, gesetzt mit 4 verschiedenen Schriften und alle *in derselben Punktgröße dargestellt*. Beachten Sie, wie die „Größe“ dieser Kleinbuchstaben je nach Schriftdesign (Schriftart) variiert, obwohl sie alle in derselben *selben* Punktgröße gesetzt sind:

![Verschiedene Schriften in derselben Punktgröße](/files/e68bf89b5930b470aecce6960f13ddab6ca02464)

#### Einfacher Zeilenabstand im setspace-Paket

Wir können [Diskussionen auf tex.stackexchange](https://tex.stackexchange.com/a/30106) als Grundlage für einige weitere Erläuterungen verwenden.

Ein einfaches Dokument mit der `article` -Klasse hat eine standardmäßige Textschriftgröße von 10pt mit einem `\baselineskip` von 12pt. Mit der Option \[11pt] oder \[12pt] verwendet die Dokumentklasse article eine größere Schriftgröße und entsprechend größere Werte für `\baselineskip` wie in der folgenden Tabelle gezeigt:

| Option             | Schriftgröße                | $$\texttt{\baselineskip}$$ | $$\displaystyle\frac{\texttt{\baselineskip}}{\text{font size}}$$ |
| ------------------ | --------------------------- | -------------------------- | ---------------------------------------------------------------- |
| \[10pt] (Standard) | 10pt                        | 12pt                       | 1.2                                                              |
| \[11pt]            | 10,95pt$${}^{\textbf{\*}}$$ | 13,6pt                     | 1.24                                                             |
| \[12pt]            | 12pt                        | 14.5                       | 1.21                                                             |

$${}^{\textbf{\*}}$$Der Grund für den anomalen Wert von `10,95pt`, und nicht genau `11pt`, wird in diesem [Reddit-Beitrag](https://www.reddit.com/r/LaTeX/comments/ihle9h/why_does_latex_use_1095pt_text_when_the_11pt/).

Wie in der Tabelle gezeigt, gilt für jede Kombination aus Text-Punktgröße und dem entsprechenden Standardwert (d. h. Einzeilenabstand) von `\baselineskip`, das Verhältnis

$$\frac{\texttt{\baselineskip}}{\text{font size}}$$

liegt nahe bei 1,2. Dieser Verhältniswert bezeichnet den Einzeilenabstand und bildet die Grundlage für die Zeilenabstandsberechnungen, die von dem `setspace` Paket verwendet werden.

**Verstehen und Berechnen von Werten für \baselinestretch**

Um einen bestimmten Zeilenabstands-Faktor wie 1,5, 2, 3 usw. zu erreichen, muss der `\baselinestretch` Befehl scheinbar [„seltsame“ Werte](https://tex.stackexchange.com/a/30106); zum Beispiel durch [unter Verwendung von `\linespread` Befehls](https://texblog.org/2011/09/30/quick-note-on-line-spacing/). In diesem Abschnitt werfen wir einen genaueren Blick auf `\baselinestretch` um zu sehen, wie diese „seltsamen“ Werte entstehen.

Wählen wir ein Dokument mit der Standardschriftgröße von $$f$$ und dem Standard- `\baselineskip` von $$\text{dbls}\_1$$, wobei der Index $${}\_1$$ den Standard- `\baselineskip` Wert für Einzeilenabstand bei Schriftgröße $$f$$.

Wir ***definieren*** Einzeilenabstand als das folgende Verhältnis, auf das wir uns als $$\alpha\_f$$:

$$\frac{\text{dbls}\_1}{f}=\alpha\_f$$

Für eine gegebene Schriftgröße $$f$$, definieren wir auch *definieren* die folgenden Zeilenabstandswerte:

* ein 1,5-facher Zeilenabstand ist *definiert* als

$$\frac{\text{dbls}\_{1.5}}{f}=1.5$$

* ein 2,0-facher Zeilenabstand ist *definiert* als

$$\frac{\text{dbls}\_{2.0}}{f}=2.0$$

* ein Faktor, $$m$$, des Zeilenabstands ist *definiert* als

$$\frac{\text{dbls}\_{m}}{f}=m$$

Unter Verwendung unseres Einzeilenabstands, definiert durch das Verhältnis $$\alpha\_f$$, können wir den folgenden „Pseudocode“ schreiben, um einen `\baselinestretch` Wert für ein beliebiges Zeilenabstands-Multiple zu ermitteln $$m$$:

$$\begin{align\*} \texttt{multi spacing } (m) &= \text{a constant } (\lambda) \times \texttt{single spacing}\ \frac{\text{dbls}\_{m}}{f}&=\lambda \times \alpha\_f\ m&=\lambda\alpha\_f\ \lambda&=\frac{m}{\alpha\_f}\kern5pt(\text{refer to }\lambda\text{ as }\texttt{\baselinestretch})\ \implies \texttt{\baselinestretch}&=\frac{m}{\alpha\_f} \end{align\*}$$

Verwenden wir `11pt` Text (eigentlich `10,95pt`) und den Standard- `\baselineskip` Wert von `13,6pt` um zu berechnen `\baselinestretch` für *doppelten* Zeilenabstand:

$$\begin{align\*} m&=2.0\ \texttt{\baselinestretch}&=\frac{2.0}{\alpha\_f}\ &=\frac{2.0}{\frac{\text{dbls}\_1}{f}}\ &=\frac{2.0}{\frac{13.6}{11}}\ &=2.0 \times \frac{11}{13.6}\ &=1.618\ \end{align\*}$$

Der folgende Codeausschnitt wird im `setspace` Paket verwendet, um `\doublespacing` zu erreichen, wenn die Schriftgröße 11pt beträgt. Beachten Sie, wie der Wert von `1.618`, wie oben berechnet, im Befehl gespeichert wird `\baselinestretch`:

```latex
\newcommand{\doublespacing}{%
  \setstretch {1.667}%  Standard
  \ifcase \@ptsize \relax % 10pt
    \setstretch {1.667}%
  \or % 11pt
    \setstretch {1.618}%
  \or % 12pt
    \setstretch {1.655}%
  \fi
}
```

Unter Verwendung einer `article` Dokumentklasse mit der Schriftgrößenoption 11pt vergleicht das folgende Beispiel `\doublespacing` mit einer `spacing` Umgebung unter Verwendung unseres berechneten Werts von `1.618` für `\baselinestretch`. Überraschenderweise sind die `\baselineskip` Werte identisch (`22,00475pt`):

```latex
\begingroup
\doublespacing
\verb|\baselineskip|=\texttt{\the\baselineskip} (über \verb|\doublespacing|)

\blindtext[1]

\endgroup

\begin{spacing}{1.618}
\verb|\baselineskip|=\texttt{\the\baselineskip} (über \verb|\begin{spacing}{1.618})|

\blindtext[1]
\end{spacing}
```

&#x20;[Öffnen Sie dieses Beispiel in Overleaf](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=Demonstrating+baselinestretch+calculations\&snip=%5Cdocumentclass%5B11pt%5D%7Barticle%7D%0A%25+Choose+a+conveniently+small+page+size%0A%5Cusepackage%5Bpaperheight%3D25cm%2Cpaperwidth%3D16cm%2Ctextwidth%3D14cm%5D%7Bgeometry%7D%0A%5Cusepackage%7Bsetspace%7D%0A%5Cusepackage%7Bblindtext%7D+%25+For+dummy+text.%0A%5Cbegin%7Bdocument%7D%0A%5Cbegingroup%0A%5Cdoublespacing%0A%5Cverb%7C%5Cbaselineskip%7C%3D%5Ctexttt%7B%5Cthe%5Cbaselineskip%7D+%28via+%5Cverb%7C%5Cdoublespacing%29%7C%0A%0A%5Cblindtext%5B1%5D%0A%0A%5Cendgroup%0A%0A%5Cbegin%7Bspacing%7D%7B1.618%7D%0A%5Cverb%7C%5Cbaselineskip%7C%3D%5Ctexttt%7B%5Cthe%5Cbaselineskip%7D+%28via+%5Cverb%7C%5Cbegin%7Bspacing%7D%7B1.618%7D%29%7C%0A%0A%5Cblindtext%5B1%5D%0A%5Cend%7Bspacing%7D%0A%5Cend%7Bdocument%7D)

Dieses Beispiel erzeugt die folgende Ausgabe:

![Demonstration von \baselinestretch](/files/4d68e0e1d0be871e48c51d53fa9ba3e63e881ffb)

Ähnliche Berechnungen von `\baselinestretch` Werte gelten auch für andere Schriftgrößen- und Zeilenabstands-Kombinationen, wie in den folgenden Tabellen aufgeführt:

![setspace-Parameter](/files/70785288c67677043ae47b11c7682cb0defb47da)

## Verwendung von TeX/LaTeX-Parameterbefehlen

Die folgenden Abschnitte untersuchen eine Reihe von Befehlen im Zusammenhang mit Absatzabstand/-formatierung: einige dieser Befehle sind *integriert in* TeX-Setzmaschinen, andere sind TeX/LaTeX-Makros. In TeX-Engines eingebaute Befehle sind bekannt als *Primitiven*, was bedeutet, dass sie *grundlegend* und *nicht reduzierbar* sind, da Primitiven im Gegensatz zu Makros nicht aus Sequenzen anderer Befehle aufgebaut werden.

Insbesondere werden wir eine Reihe von primitiven *Parameterbefehlen* betrachten, die von allen TeX-Engines unterstützt werden, einschließlich pdfTeX, XeTeX und LuaTeX. Parameterbefehle, ob absatzbezogen oder nicht, werden verwendet, um *den aktuellen Wert abzurufen* des entsprechenden Parameters, oder *diesen Parameter auf einen neuen Wert zu setzen*. Zum Beispiel bestimmt der `\parskip` Befehl, ein Primitiv, den Wert eines Parameters, der die Menge an Leerraum steuert, die zwischen zwei gesetzten Absätzen eingefügt wird.

Um *abzurufen* (hier: zu setzen) den aktuellen Wert von `\parskip` würden Sie schreiben:

```latex
\the\parskip
```

Um *setzen* den aktuellen Wert von `\parskip` auf `1pt plus2pt` (ein flexibles Glue) könnten Sie so etwas schreiben:

```latex
\setlength{\parskip}{1pt plus2pt}
```

Wir besprechen auch einige nützliche TeX/LaTeX- *Makros*, höherstufige Befehle, die mit einer Sequenz von Bestandteilen geschrieben und aufgebaut werden.

### Befehle für den Absatzabstand

Die folgenden Befehle (Primitiven und Makros) können verwendet werden, um den Absatzabstand zu beeinflussen. Einige werden ausführlicher erläutert, und der Zugriff darauf ist über den Link im Befehlsnamen möglich.

#### Primitive Befehle

* [`**\parindent**`](#parindent-tex-primitive): die Menge an Einzug (Leerraum), die der ersten Zeile eines Absatzes hinzugefügt wird.
* [`**\parskip**`](#parskip-tex-primitive): die Menge an flexiblem Leerraum („Glue“), die zwischen Absätzen eingefügt wird.
* [`**\rightskip**`](#leftskip-and-rightskip-tex-primitives): flexibler Abstand (Glue), der rechts von jeder Zeile in einem Absatz eingefügt wird.
* [`**\leftskip**`](#leftskip-and-rightskip-tex-primitives): flexibler Abstand (Glue), der links von jeder Zeile in einem Absatz eingefügt wird.
* [`**\baselineskip**`](#baselineskip-tex-primitive): der Wert dieses Parameters erfüllt zwei Rollen:
  * er legt den gewünschten Abstand zwischen den Grundlinien des Textes in einem Absatz fest;
  * er wird verwendet, um die (variable) Menge an Abstand (Glue) zu berechnen, die zwischen den Zeilen hinzugefügt wird, um den gewünschten Grundlinienabstand ([siehe später im Artikel](#how-the-space-glue-between-paragraph-lines-is-calculated)).
* [`**\lineskiplimit**`](#lineskip-and-lineskiplimit-tex-primitives): ein Parameter, dessen Wert den minimal zulässigen Abstand zwischen zwei benachbarten Zeilen eines Absatzes definiert.
* [`**\lineskip**`](#lineskip-and-lineskiplimit-tex-primitives): die Menge an Abstand (Glue), die zwischen zwei Zeilen in einem Absatz eingefügt wird, wenn der berechnete `\baselineskip` Glue dazu führen würde, dass die Zeilen zu dicht beieinander liegen.
* `**\parfillskip**`: sehr flexibler Glue, der am Ende der letzten Zeile eines Absatzes hinzugefügt wird, um sie mit Leerraum „aufzufüllen“; ein visuelles Beispiel finden Sie in der Illustration im Abschnitt [*Visualisierung anderer Arten von Absatz-Glue*](#visualizing-other-types-of-paragraph-glue).

#### Makrobefehle

Die folgenden TeX/LaTeX-Makrobefehle werden häufig verwendet, um den Absatzabstand zu ändern:

* [`**\offinterlineskip**` und `**\nointerlineskip**`](#offinterlineskipandnointerlineskip): Befehle, mit denen die Berechnung und Einfügung von `\baselineskip` Glue deaktiviert werden kann;
* [`**\baselinestretch**`](#understanding-and-calculating-values-for-baselinestretch): ein Befehl, der einen numerischen Faktor speichert, der zur Berechnung des Werts von `\baselineskip` verwendet wird, wenn eine Schriftart ausgewählt wird. Er hat standardmäßig den Wert 1;
* [`**\linespread**`](#demonstrating-linespread): dieser Befehl kann verwendet werden, um den aktuellen Wert von `\baselinestretch`.

### Flexibler Abstand (Glue)

TeX-Engines erzielen Abständeffekte, auch innerhalb oder zwischen Absätzen, durch die Verwendung eines flexiblen Leerraums namens *Glue* der je nach benötigtem Platz gedehnt oder gestaucht werden kann. Wenn Sie mehr über TeXs Konzept von Glue erfahren möchten, finden Sie weitere Details in den folgenden Overleaf-Artikeln:

* [Erkunden von zu kleinen oder zu großen Boxen und Badness-Berechnungen](https://www.overleaf.com/latex/examples/exploring-underfull-or-overfull-boxes-and-badness-calculations/wpfsjnbkrfhv)
* [Wie TeX die Glue-Einstellungen in einem \hbox berechnet](/latex/de/ausfuhrliche-artikel/24-how-tex-calculates-glue-settings-in-an-hbox.md)
* [Verstehen von Warnungen über zu kleine und zu große Boxen](/latex/de/wissensdatenbank/138-understanding-underfull-and-overfull-box-warnings.md).

## Die Grundlagen: Parameterbefehle und Beispiele

In diesem Abschnitt erläutern wir eine Reihe von auf den Absatz bezogenen Parameterbefehlen und geben Beispiele für ihre Verwendung.

### \parindent (TeX-Primitiv)

Dieser Parameterbefehl legt die Menge an Einzug (Leerraum) fest, die der ersten Zeile eines Absatzes hinzugefügt wird. Er kann mit LaTeXs `\setlength` Befehl geändert werden; zum Beispiel können Sie Absätze um `15pt` setzen `\parindent` auf `15pt` einrücken, indem Sie schreiben:

```latex
\setlength{\parindent}{15pt}
```

Beachten Sie:

* Sie können `\parindent` in einer Gruppe ändern, wodurch sichergestellt wird, dass seine Wirkung auf die Absätze in dieser Gruppe beschränkt ist;
* `\parindent` kann negativ sein, wodurch statt eines Einzugs ein „Ausrücken“ entsteht;
* standardmäßig rückt LaTeX den ersten Absatz nach einer Dokumentabschnittsüberschrift (`\section{...}` usw.) nicht ein.

Das folgende Beispiel demonstriert die Verwendung von `\parindent`.

```latex
\documentclass{article}
Wählen Sie eine praktisch kleine Seitengröße
\usepackage[paperheight=16cm,paperwidth=12cm,textwidth=8cm]{geometry}
% Erstelle einen Befehl, der einen Absatz Text enthält
\newcommand{\testpar}{\texttt{\string\parindent=\the\parindent\ }Wenn \TeX{} einen Absatz setzt, behandelt es jedes einzelne Zeichen als eine 2D-``Box'' mit einer bestimmten Breite, Höhe und Tiefe.\par}
\begin{document}

% Setze \parskip, um 10pt zwischen Absätzen einzufügen
\setlength{\parskip}{10pt}

% Setze den Wert von \parindent auf 0pt
\setlength{\parindent}{0pt}
\testpar

% Setze den Wert von \parindent auf 10pt
\setlength{\parindent}{10pt}
\testpar

% Setze \parindent in einer Gruppe
{\setlength{\parindent}{50pt}\testpar}

% Nun ist \parindent wieder 10pt
\testpar

% Ja, Sie können ein negatives \parindent haben
\setlength{\parindent}{-20pt}
\testpar
\end{document}
```

&#x20;[Öffnen Sie dieses Beispiel in Overleaf](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=Changing+paragraph+indentation\&snip=%5Cdocumentclass%7Barticle%7D%0A%25+Choose+a+conveniently+small+page+size%0A%5Cusepackage%5Bpaperheight%3D16cm%2Cpaperwidth%3D12cm%2Ctextwidth%3D8cm%5D%7Bgeometry%7D%0A%25+Create+a+command+to+hold+a+paragraph+of+text%0A%5Cnewcommand%7B%5Ctestpar%7D%7B%5Ctexttt%7B%5Cstring%5Cparindent%3D%5Cthe%5Cparindent%5C+%7DWhen+%5CTeX%7B%7D+typesets+a+paragraph+it+treats+each+individual+character+as+a+2D+%60%60box%27%27+with+a+specific+width%2C+height+and+depth.%5Cpar%7D%0A%5Cbegin%7Bdocument%7D%0A%0A%25+Set+%5Cparskip+to+put+10pt+between+paragraphs%0A%5Csetlength%7B%5Cparskip%7D%7B10pt%7D%0A%0A%25+Set+the+value+of+%5Cparindent+to+0pt%0A%5Csetlength%7B%5Cparindent%7D%7B0pt%7D%0A%5Ctestpar%0A%0A%25+Set+the+value+of+%5Cparindent+to+10pt%0A%5Csetlength%7B%5Cparindent%7D%7B10pt%7D%0A%5Ctestpar%0A%0A%25+Set+%5Cparindent+in+a+group%0A%7B%5Csetlength%7B%5Cparindent%7D%7B50pt%7D%5Ctestpar%7D%0A%0A%25+Now+%5Cparindent+is+again+10pt%0A%5Ctestpar%0A%0A%25+Yes%2C+you+can+have+a+negative+%5Cparindent%0A%5Csetlength%7B%5Cparindent%7D%7B-20pt%7D%0A%5Ctestpar%0A%5Cend%7Bdocument%7D)

Dieses Beispiel erzeugt die folgende Ausgabe:

![Verwendung verschiedener Absatz-Einzugswerte in LaTeX](/files/a2244dbc940328f5cb0e031749beb69f82565f78)

### \parskip (TeX-Primitiv)

Die Lesbarkeit von Text kann verbessert werden, indem Absätze durch einen gewissen Leerraum getrennt werden, dessen Größe je nach gestalterischer Ästhetik variiert. TeX/LaTeX ermöglichen es Benutzern, diesen Absatzabstand über den `\parskip` Parameterbefehl zu steuern.

* **Hinweise von der `parskip` Paket**: Das [parskip-Paket](https://ctan.org/pkg/parskip) rät davon ab, direkt `\parskip` kann „zu vertikalen Abständen an unerwarteten Stellen“ führen (innerhalb eines LaTeX-Dokuments). Das `parskip` Paket versucht, Abstandsprobleme zu beheben, die durch Änderungen am Wert von `\parskip`entstehen könnten — etwa innerhalb von Inhaltsverzeichnissen und Listen-Umgebungen. Siehe auch den [`parskip` Paketabschnitt dieses Artikels](#the-parskip-package).

Um den aktuellen Wert von `\parskip` manuell festzulegen, verwenden Sie LaTeXs `\setlength` Befehl; zum Beispiel können Sie Absätze mit 3pt Abstand schreiben:

```latex
\setlength{\parskip}{3pt}
```

Das folgende Beispiel demonstriert die Verwendung von `\parskip`:

```latex
\documentclass{article}
Wählen Sie eine praktisch kleine Seitengröße
\usepackage[paperheight=16cm,paperwidth=12cm,textwidth=8cm]{geometry}
% Erstelle einen Befehl, der einen Absatz Text enthält
\newcommand{\testpar}{\noindent Der aktuelle Wert von \texttt{\string\parskip} ist \texttt{\the\parskip}. Wenn \TeX{} einen Absatz setzt, behandelt es jedes einzelne Zeichen als eine 2D~``Box'' mit einer bestimmten Breite, Höhe und Tiefe.\par}
\begin{document}
\testpar
% Setze \parskip auf 5pt
\setlength{\parskip}{5pt}\testpar
% Setze parskip auf 10pt
\setlength{\parskip}{10pt}\testpar
% Setze \parskip auf 25pt (aber in einer Gruppe)
{\setlength{\parskip}{25pt}\testpar}
% Gruppe endet, nun ist \parskip wieder 10pt
\testpar
% Ja, Sie können ein negatives \parskip haben
\setlength{\parskip}{-20pt}\testpar
\end{document}
```

&#x20;[Öffnen Sie dieses Beispiel in Overleaf](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=Changing+parskip+settings\&snip=%5Cdocumentclass%7Barticle%7D%0A%25+Choose+a+conveniently+small+page+size%0A%5Cusepackage%5Bpaperheight%3D16cm%2Cpaperwidth%3D12cm%2Ctextwidth%3D8cm%5D%7Bgeometry%7D%0A%25+Create+a+command+to+hold+a+paragraph+of+text%0A%5Cnewcommand%7B%5Ctestpar%7D%7B%5Cnoindent+The+current+value+of+%5Ctexttt%7B%5Cstring%5Cparskip%7D+is+%5Ctexttt%7B%5Cthe%5Cparskip%7D.+When+%5CTeX%7B%7D+typesets+a+paragraph+it+treats+each+individual+character+as+a+2D%7E%60%60box%27%27+with+a+specific+width%2C+height+and+depth.%5Cpar%7D%0A%5Cbegin%7Bdocument%7D%0A%5Ctestpar%0A%25+Set+%5Cparskip+to+5pt+%0A%5Csetlength%7B%5Cparskip%7D%7B5pt%7D%5Ctestpar%0A%25+Set+parskip+to+10pt%0A%5Csetlength%7B%5Cparskip%7D%7B10pt%7D%5Ctestpar%0A%25+Set+%5Cparskip+to+25pt+%28but+in+a+group%29%0A%7B%5Csetlength%7B%5Cparskip%7D%7B25pt%7D%5Ctestpar%7D%0A%25+Group+ends%2C+now+%5Cparskip+is+again+10pt%0A%5Ctestpar%0A%25+Yes%2C+you+can+have+a+negative+%5Cparskip%0A%5Csetlength%7B%5Cparskip%7D%7B-20pt%7D%5Ctestpar%0A%5Cend%7Bdocument%7D)

Dieses Beispiel erzeugt die folgende Ausgabe:

![Demonstration der Verwendung von \parskip in LaTeX](/files/dff491eff08080f530ad53124aa9e549e0fb6ff2)

#### Flexibles \parskip

Traditionell, `\parskip` ist kein *fester* Wert, der zwischen allen Absätzen denselben Abstand erzeugen würde. Stattdessen wird `\parskip` üblicherweise als „flexibler Abstand“ (genannt Glue) definiert, was TeX erlaubt, den Abstand zwischen Absätzen zu dehnen oder zu stauchen und so dabei hilft, den Inhalt auf die Seite zu bekommen und eine „gute“ Stelle für einen Seitenumbruch zu finden.

Um `\parskip` flexibel zu machen, würden Sie es in Form einer Glue-Spezifikation schreiben:

`\setlength{\parskip}{*fester Betrag* **plus** *zu dehnender Betrag* **minus** *zu schrumpfender Betrag*}`

wobei `**plus**` und `**minus**` Schlüsselwörter *sind* von TeX/LaTeX verwendet, um den *zu dehnenden Betrag* oder *zu schrumpfenden Betrag* zu identifizieren, der in einer Glue-Spezifikation enthalten ist. Der Overleaf-Artikel [*Erkunden von zu kleinen oder zu großen Boxen und Badness-Berechnungen*](https://www.overleaf.com/latex/examples/exploring-underfull-or-overfull-boxes-and-badness-calculations/wpfsjnbkrfhv) enthält eine ausführlichere Diskussion über Glue.

Zum Beispiel, um `\parskip` zu erlauben, zwischen `3 + 1 = 4pt` und `3 — 1 = 2pt` zu variieren, könnten Sie schreiben

```latex
\setlength{\parskip}{3pt plus1pt minus1pt}
```

### \leftskip und \rightskip (TeX-Primitiven)

TeX-Engines bieten zwei Parameterbefehle, die Abstand (Glue) links und rechts von jeder Zeile im gesetzten Absatz hinzufügen. Wie ihre Namen schon andeuten:

* `\leftskip` fügt links von jeder Zeile in einem Absatz Abstand (Glue) ein;
* `\rightskip` fügt rechts von jeder Zeile in einem Absatz Abstand (Glue) ein.

Die folgenden Beispiele verwenden `\leftskip` und `\rightskip` um die Absatz-Ausrichtung direkt zu ändern; allerdings ... lassen sich Änderungen der Textausrichtung normalerweise am besten mithilfe geeigneter LaTeX-Umgebungen oder -Pakete erzielen — siehe zum Beispiel den [Overleaf-Artikel zur Textausrichtung](/latex/de/formatierung/06-text-alignment.md). Obwohl wir das Verhalten einiger von TeX-Engines bereitgestellter Low-Level-Parameterbefehle (Primitiven) demonstrieren, ist es im Allgemeinen ratsam, wann immer möglich geeignete LaTeX-Pakete zu verwenden.

#### \leftskip fest und \rightskip flexibel machen

Das folgende Beispiel erzeugt zwei Absätze: der erste verwendet LaTeXs Standardwerte für `\leftskip` und `\rightskip` und der zweite Absatz wird mit den folgenden Einstellungen gesetzt:

```latex
\leftskip 10pt
\rightskip 0pt plus 1 fill
```

Öffnen Sie das folgende Overleaf-Projekt, um die Ausgabe zu sehen:

```latex
\documentclass{article}
\title{Zweites leftskip- und rightskip-Beispiel}
Wählen Sie eine praktisch kleine Seitengröße
\usepackage[paperheight=16cm,paperwidth=12cm,textwidth=8cm]{geometry}
% Setze den Wert einiger auf den Absatz bezogener Parameter
\setlength{\lineskip}{3.5pt}
\setlength{\lineskiplimit}{2pt}
\setlength{\parindent}{20pt}
\setlength{\baselineskip}{12pt}

\begin{document}
\input text.tex % Eine generierte TeX-Datei, die die Makros definiert
% \mytextA und \mytextB, die jeweils den Text für einen Absatz enthalten.
% Setze einen Absatz mit Standardwerten von \leftskip und \rightskip

\mytextB

% Setze \leftskip und \rightskip auf neue Werte
\leftskip 10pt
\rightskip 0pt plus 1fill
\vspace{8pt}

% Nun denselben Absatz erneut setzen
\mytextB

\end{document}
```

&#x20;Öffnen Sie dieses Beispiel als Overleaf-LaTeX-Projekt

Dieses Beispiel erzeugt die folgende Ausgabe:

![Setzen von \leftskip-Glue in LaTeX](/files/146ff7bb8a89aebdf3a622a6ed8e49488194431e)

Die folgende Grafik ist eine kommentierte Version des zweiten Absatzes, der vom obigen Beispiel erzeugt wurde. Sie soll die Menge an `\leftskip` und `\rightskip` eingefügten Glues in den Absatzzeilen hervorheben und zeigen, zusammen mit dem `\parindent` Abstand für die erste Zeile:

![Setzen von \leftskip-Glue in LaTeX](/files/96e2e00cb3a1e1db827fe960bbe53114ff817677)

Beachten Sie, dass `\leftskip` Glue hat eine feste Größe (10pt), aber `\rightskip` Glue hat sich gedehnt, um so viel Leerraum bereitzustellen, wie nötig ist, um die rechte Seite jeder Zeile zu füllen. Diese „Flexibilität“ beruht auf der Spezifikation von `\rightskip` die enthält `plus 1 fill`—und damit eine Form von Glue bereitstellt, die „unendlich dehnbar“ ist.

#### \rightskip fest und \leftskip flexibel machen

Das folgende Beispiel erzeugt zwei Absätze: der erste verwendet LaTeXs Standardwerte für `\leftskip` und `\rightskip` und der zweite Absatz wird mit den folgenden Einstellungen gesetzt:

```latex
\leftskip 0pt plus 1 fill
\rightskip 10pt
```

Öffnen Sie das folgende Overleaf-Projekt, um die Ausgabe zu sehen:

```latex
\documentclass{article}
\title{leftskip- und rightskip-Beispiele}
Wählen Sie eine praktisch kleine Seitengröße
\usepackage[paperheight=16cm,paperwidth=12cm,textwidth=8cm]{geometry}
% Setze den Wert einiger auf den Absatz bezogener Parameter
\setlength{\lineskip}{3.5pt}
\setlength{\lineskiplimit}{2pt}
\setlength{\parindent}{20pt}
\setlength{\baselineskip}{12pt}

\begin{document}
\input text.tex % Eine generierte TeX-Datei, die die Makros definiert
% \mytextA und \mytextB, die jeweils den Text für einen Absatz enthalten.
% Setze einen Absatz mit Standardwerten von \leftskip und \rightskip

\mytextB

% Setze \leftskip und \rightskip auf neue Werte
\rightskip 10pt
\leftskip 0pt plus 1fill
\vspace{8pt}

% Nun denselben Absatz erneut setzen
\mytextB

\end{document}
```

&#x20;Öffnen Sie dieses Beispiel als Overleaf-LaTeX-Projekt

Dieses Beispiel erzeugt die folgende Ausgabe:

![Setzen von \rightskip-Glue in LaTeX](/files/ddd0257d07d4692609876688d600ea53121810ee)

Die folgende Grafik ist eine kommentierte Version des zweiten Absatzes, der vom obigen Beispiel erzeugt wurde. Sie soll die Menge an `\leftskip` und `\rightskip` eingefügten Glues in den Absatzzeilen hervorheben und zeigen, zusammen mit dem `\parindent` Abstand für die erste Zeile:

![Setzen von \rightskip-Glue in LaTeX](/files/a28ad59a2a5154dfda08a12ff86accca1f302f61)

Beachten Sie, dass `\rightskip` Glue hat eine feste Größe (10pt), aber `\leftskip` Glue hat sich gedehnt, um so viel Leerraum bereitzustellen, wie nötig ist, um die linke Seite jeder Zeile zu füllen. Diese „Flexibilität“ beruht auf der Spezifikation von `\leftskip` die enthält `plus 1 fill`—und damit eine Form von Glue bereitstellt, die „unendlich dehnbar“ ist.

#### \leftskip und \rightskip auf flexible Werte setzen

Das folgende Beispiel erzeugt zwei Absätze: der erste verwendet LaTeXs Standardwerte für `\leftskip` und `\rightskip` und der zweite verwendet die folgenden flexiblen Glue-Einstellungen:

```latex
\leftskip 0pt plus 1fill
\rightskip 0pt plus 1fill
```

Diese Einstellungen führen dazu, dass die Absatzzeilen zentriert werden:

```latex
\documentclass{article}
\title{leftskip- und rightskip-Beispiele}
Wählen Sie eine praktisch kleine Seitengröße
\usepackage[paperheight==16cm,paperwidth==12cm,textwidth=8cm]{geometry}
% Setze den Wert einiger auf den Absatz bezogener Parameter
\setlength{\lineskip}{3.5pt}
\setlength{\lineskiplimit}{2pt}
\setlength{\parindent}{20pt}
\setlength{\baselineskip}{12pt}

\begin{document}
\input text.tex % Eine generierte TeX-Datei, die die Makros definiert
% \mytextA und \mytextB, die Text für zwei Absätze definieren
% Setze einen Absatz mit Standardwerten von \leftskip und \rightskip

\mytextB

% Setze \leftskip und \rightskip auf „extrem flexible“ Glue-Einstellungen
\leftskip 0pt plus 1fill
\rightskip 0pt plus 1fill
\vspace{20pt}

% Nun denselben Absatz erneut setzen
\mytextB

\end{document}
```

&#x20;Öffnen Sie dieses Beispiel als Overleaf-LaTeX-Projekt

Dieses Beispiel erzeugt die folgende Ausgabe:

![Beispiel zur Veranschaulichung von \leftskip und \rightskip](/files/c80173bfe61f7aeb53653fb97bcc109900d46398)

Die folgende Grafik ist eine kommentierte Version des zweiten Absatzes, der vom obigen Beispiel erzeugt wurde. Sie soll die Menge an `\leftskip` und `\rightskip` eingefügten Glues in den Absatzzeilen hervorheben und zeigen, zusammen mit dem `\parindent` Abstand für die erste Zeile:

![Beispiel zur Veranschaulichung von \leftskip und \rightskip](/files/68b9fdc094dc45f3e6097e8411d5eca1774bc081)

Beachten Sie, dass beide `\leftskip` und `\rightskip` angegeben sind als `0pt plus 1fill` und machen sie damit gleichermaßen „unendlich flexibel“; folglich dehnen sie sich um den gleichen Betrag, was dazu führt, dass gesetzte Zeilen zentriert werden.

#### Setzen von \leftskip und \rightskip in einer Gruppe

Das folgende Beispiel zeigt, wie man vorübergehende Änderungen an `\leftskip` und `\rightskip` vornehmen kann, indem man sie innerhalb einer Gruppe einschließt. In unserem Beispiel wird die Gruppe erzeugt durch `\begingroup`... `\endgroup`; wie im folgenden Codefragment gezeigt:

```latex
\begingroup
\leftskip 0pt plus 1fill
\rightskip 0pt plus 1fill
\mytextB
\endgroup
```

Der erste Absatz wird mit „extrem flexibel“em Glue für `\leftskip` und `\rightskip`:

```latex
\leftskip 0pt plus 1fill
\rightskip 0pt plus 1fill
```

gesetzt, während der zweite Absatz LaTeX-Standardwerte verwendet:

```latex
\documentclass{article}
\title{Ein weiteres Beispiel für leftskip und rightskip}
Wählen Sie eine praktisch kleine Seitengröße
\usepackage[paperheight=16cm,paperwidth=12cm,textwidth=8cm]{geometry}
% Setze den Wert einiger auf den Absatz bezogener Parameter
\setlength{\lineskip}{3.5pt}
\setlength{\lineskiplimit}{2pt}
\setlength{\parindent}{20pt}
\setlength{\baselineskip}{12pt}

\begin{document}
\input text.tex % Eine generierte TeX-Datei, die die Makros definiert
% \mytextA und \mytextB, die Text für zwei Absätze definieren
% Hier ändern wir \leftskip und \rightskip auf „extrem flexible“ Glue-Einstellungen
% innerhalb einer von \begingroup ... \endgroup erzeugten Gruppe

\begingroup
\leftskip 0pt plus 1fill
\rightskip 0pt plus 1fill
\mytextB
\endgroup

% Nun denselben Absatz nach dem Schließen der Gruppe erneut setzen
% wodurch \leftskip und \rightskip auf ihre vorherigen Werte zurückgesetzt werden

\vspace{20pt}
\mytextB

\end{document}
```

&#x20;Öffnen Sie dieses Beispiel als Overleaf-LaTeX-Projekt

Dieses Beispiel erzeugt die folgende Ausgabe:

![Verwendung von \leftskip und \rightskip in einer Gruppe](/files/b22ad30cf9b2d07a1d662412c2f390dda0c2968f)

**Hinweis**: Die Einstellungen für (Auswirkungen von) `\leftskip` und `\rightskip` sind auf den Absatz innerhalb der von `\begingroup`... `\endgroup`erzeugten Gruppe beschränkt. Nachdem die Gruppe geschlossen wurde, wird der nächste Absatz mit den LaTeX-Standardwerten für gesetzt. `\leftskip` und `\rightskip`.

### \baselineskip (TeX-Primitive)

Es ist allgemein anerkannte Satzpraxis, dass Zeilen eines Textes innerhalb von Absätzen gleichmäßig verteilt sein sollten, außer dort, wo bestimmte Zeilen große Elemente enthalten, etwa Mathematik oder ein Bild, die es unmöglich machen, den konstanten Zeilenabstand für solche Zeilen beizubehalten.

TeX/LaTeX stellen Befehle und Mechanismen bereit, mit denen Benutzer ein gewisses Maß an Kontrolle über den Zeilenabstand ausüben können. Ein solcher Befehl ist `\baselineskip` der den Wert eines Parameters abfragt oder setzt, der den bevorzugten Zeilenabstand (Abstand von Grundlinie zu Grundlinie) in einem gesetzten Absatz bestimmt.

Um den aktuellen Wert von `\baselineskip` zu setzen, können Sie schreiben

```latex
\the\baselineskip
```

Um `\baselineskip` auf einen `Wert` (eine LaTeX-Länge wie `pt`) zu setzen, können Sie schreiben

```latex
\setlength{\baselineskip}{value}
```

Zum Beispiel, um `\baselineskip` auf `12pt` zu setzen, können Sie schreiben

```latex
\setlength{\baselineskip}{12pt}
```

Wir können die Rolle von `\baselineskip` veranschaulichen, indem wir den folgenden (typischen) Absatz verwenden:

![Ein Beispiel-LaTeX-Absatz](/files/1846a1dba8f19b87afefa3f2fac9a8ec28dd4341)

und Anmerkungen hinzufügen, die den von `\baselineskip`:

![Ein Beispiel-LaTeX-Absatz mit Anmerkungen zur Darstellung der Grundlinienabstände](/files/3bcb52ae3c5b305f6209f87f65e5ff86b91eafd2)

Das Diagramm zeigt auch den Zeilen-„Glue“: eine berechnete Menge an Weißraum, die zwischen Zeilen hinzugefügt wird — darauf gehen wir später im Artikel noch genauer ein.

#### \baselineskip und andere Parameter

`\baselineskip` ist einer von vier Kernparametern, die den zwischen den Zeilen eines Absatzes eingefügten Abstand steuern; die anderen sind:

* `\lineskip`
* `\lineskiplimit`
* `\prevdepth`

Später im Artikel werden wir untersuchen [*wie diese vier Parameter verwendet werden*](#paragraph-structure-and-line-space-calculations) um Zwischenlinien-Glue-Werte zu berechnen.

#### \baselineskip-Beispiel (fester Abstand)

Das folgende Beispiel öffnet sich in Overleaf, um ein Projekt zu erstellen, das eine Datei namens enthält `text.tex` die die Befehle definiert `\mytextA` und `\mytextB`— beide Befehle setzen einen Absatz. Der Einfachheit halber verwendet das Overleaf-Projekt eine kleine Seitengröße, da dies bei der Erstellung von Grafiken und Bildern für diese Hilfeseite hilft.

```latex
\documentclass{article}
\title{Demonstration von baselineskip}
Wählen Sie eine praktisch kleine Seitengröße
\usepackage[paperheight=16cm,paperwidth=12cm,textwidth=8cm]{geometry}
% Den Wert einiger absatzbezogener Parameter setzen (wir werden diese besprechen)
\setlength{\lineskip}{3.5pt}
\setlength{\lineskiplimit}{2pt}
\setlength{\parindent}{20pt}
% Den Wert von \baselineskip setzen — ändern Sie den Wert, um die Wirkung zu sehen
\setlength{\baselineskip}{12pt}

\begin{document}
\input text.tex % Eine generierte TeX-Datei, die die Makros definiert
% \mytextA und \mytextB, die jeweils einen Absatz setzen

% Zunächst zwei Absätze mit dem Standard-\baselineskip setzen
\mytextA\mytextB

% Nun \baselineskip auf einen größeren Wert ändern und
% einen weiteren Absatz setzen
\setlength{\baselineskip}{24pt}
\mytextA

\end{document}
```

&#x20;Öffnen Sie dieses Beispiel als Overleaf-LaTeX-Projekt

Dieses Beispiel erzeugt die folgende Ausgabe:

![Erkundung von baselineskip in TeX oder LaTeX](/files/f6b5771cae104d8efe83a98ae4d8cf8ab19838db)

Der Absatz auf Seite 2 hat weit auseinanderliegende Zeilen, weil `\baselineskip` auf 24pt gesetzt wurde.

#### \baselineskip-Beispiel (flexibler Abstand)

Das folgende Beispiel gibt einen `\baselineskip` Wert an, der eine extrem flexible (sogenannte „unendliche“) Streckkomponente hat:

```latex
\baselineskip=12pt plus1fil
```

Aufgrund dieser Flexibilität kann der Weißraum zwischen den Absatzzeilen um jeden erforderlichen Betrag gedehnt werden, um die Seite zu füllen. Eine solche Flexibilität würde dazu führen, dass Absätze sehr unterschiedliche Abstände zwischen ihren einzelnen Textzeilen haben, was möglicherweise nicht ästhetisch ansprechend oder leicht zu lesen wäre.

```latex
\documentclass{article}
\usepackage{blindtext}
\title{Demo für flexibles \texttt{\string\baselineskip}}
\author{Overleaf}
\date{Januar 2022}

\begin{document}

\maketitle
Wir geben \verb|\baselineskip| mit einer sehr flexiblen „Streck“-Komponente aus, indem wir den Wert \texttt{12pt plus1fil} zuweisen: \verb|\baselineskip=12pt plus1fil|.\baselineskip=12pt plus1fil
\section{Einleitung}
Fügen Sie einen Absatz hinzu, der sich nun auf die Seite streckt. \blindtext

\end{document}
```

&#x20;[Öffnen Sie dieses Beispiel in Overleaf](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=Flexible+baselineskip+demo\&snip=%5Cdocumentclass%7Barticle%7D%0A%5Cusepackage%7Bblindtext%7D%0A%5Ctitle%7BFlexible+%5Ctexttt%7B%5Cstring%5Cbaselineskip%7D+demo%7D%0A%5Cauthor%7BOverleaf%7D%0A%5Cdate%7BJanuary+2022%7D%0A%0A%5Cbegin%7Bdocument%7D%0A%0A%5Cmaketitle%0AWe%E2%80%99ll+provide+%5Cverb%7C%5Cbaselineskip%7C+with+a+very+flexible+%60%60stretch%27%27+component+by+assigning+the+value+%5Ctexttt%7B12pt+plus1fil%7D%3A+%5Cverb%7C%5Cbaselineskip%3D12pt+plus1fil%7C.%5Cbaselineskip%3D12pt+plus1fil+%0A%5Csection%7BIntroduction%7D%0AAdd+a+paragraph+that+will+now+stretch+to+fill+the+page.+%5Cblindtext%0A%0A%5Cend%7Bdocument%7D)

Dieses Beispiel erzeugt die folgende Ausgabe:

![Demonstration von baselineskip-Glue mit unendlicher Flexibilität](/files/af93153d1d2f9de97d197e565873a71491644c4e)

**Einige Hinweise zu Glue**

Einige der folgenden Hinweise stammen aus dem Overleaf-Artikel [Erkundung von underfull oder overfull boxes und Badness-Berechnungen](https://www.overleaf.com/latex/examples/exploring-underfull-or-overfull-boxes-and-badness-calculations/wpfsjnbkrfhv); hier der Einfachheit halber wiedergegeben.

Der Weißraum, den TeX zwischen den Zeilen eines Absatzes einfügt, `\baselineskip`ist eine Form flexiblen Abstands namens *Glue*. Ein Glue-Wert kann aus drei Komponenten angegeben werden:

* eine *fester* Menge;
* eine Menge, um die er *gedehnt*;
* eine Menge, um die er *geschrumpft werden kann*,

Folglich kann ein `\baselineskip` Wert so angegeben werden:

`\baselineskip`=*fester Betrag* **plus** *zu dehnenden Betrag* **minus** *zu schrumpfenden Betrag*

wobei

* **plus** und **minus** sind Schlüsselwörter, die TeX-Engines verstehen;
* *fester Betrag* wird als *normaler Anteil* des Glue bezeichnet (auch genannt der *natürliche Breite* des Glue);
* *zu dehnenden Betrag* wird als *Streckkomponente* des Glue;
* *zu schrumpfenden Betrag* wird als *Schrumpfkomponente* des Glue.

Das *fester Betrag* ist für alle Glue-Werte erforderlich, aber *zu dehnenden Betrag* und *zu schrumpfenden Betrag* sind beide optional — wenn einer oder beide fehlen, werden sie auf den Wert 0 gesetzt.

Üblicherweise wird `\baselineskip` Glue mit einem *fester Betrag* angegeben, die Streck- und Schrumpfkomponenten sind null, andernfalls hätten Absatzzeilen unregelmäßige (variable) Abstände, was möglicherweise nicht ästhetisch ansprechend wäre.

### \offinterlineskip und \nointerlineskip (Makros)

Diese Makros werden oft verwendet, um die Einfügung von Zwischenlinien-Glue zwischen den Zeilen eines Absatzes zu verhindern. Leser, die an mehr Details interessiert sind, können direkt zu den entsprechenden Artikelsektionen springen, die erklären, wie diese Makros funktionieren.

* **`\offinterlineskip`**: Siehe den Abschnitt des Artikels [*Zwischenlinien-Glue mit Größe Null: \offinterlineskip*](#zero-sized-interline-glue-offinterlineskip).
* **`\nointerlineskip`**: Siehe den Abschnitt des Artikels [*Verhindern von Zwischenlinien-Glue: \prevdepth und \nointerlineskip*](#preventing-interline-glue-prevdepth-and-nointerlineskip).

## Absatzstruktur und Zeilenabstandsberechnungen

Mit den Fähigkeiten von LuaTeX ist es möglich, [einen gesetzten Absatz nachzuberechnen](https://www.overleaf.com/latex/examples/luatex-parsing-typeset-paragraphs/mzbpwxtjshsj) um die Grenzen der einzelnen Zeichen (Glyphen), Zeilen und Glues sichtbar zu machen, aus denen er aufgebaut ist. Wir beginnen mit einer kurzen Folge von Grafiken, um das „Boxen-und-Glue“-Modell zu veranschaulichen, das TeX-Engines zum Setzen von Text innerhalb eines Absatzes verwenden.

### Absatzstruktur

Wenn TeX einen Absatz setzt, behandelt es einzelne Zeichen als Miniaturboxen, jede mit eigener Breite, Höhe und Tiefe, und diese Zeichenbox-Breiten werden verwendet, um die optimalen Positionen für Zeilenumbrüche zu berechnen. Darüber hinaus werden Leerzeichen, die im Text enthalten sind und einzelne Wörter trennen, in eine Form flexiblen Leerraums (Glue) umgewandelt, der den für jeden Zeilenumbruch benötigten Abstand bereitstellt.

Die folgende Abfolge von 7 Grafiken zeigt die Kernkomponenten eines gesetzten Absatzes: verschiedene Arten von Boxen und Glue. Die erste Grafik zeigt einen gesetzten Absatz zusammen mit einer annotierten Version, die verschiedene Elemente innerhalb des Absatzes hervorhebt. Der annotierte Absatz enthält jedoch viele Informationen, sodass die nachfolgenden Grafiken verschiedene Komponenten isolieren, um sie (hoffentlich) leichter verständlich zu machen.

![Paragraphanatomie1b.png](/files/8d60e7769dff86f9ff37b552cfe3c5aeedeb1ee0)

* Die nächste Grafik stellt Absatzzeilen als graue Boxen dar, getrennt durch Glue, der durch horizontale grüne Streifen dargestellt wird. Dieser Glue wird berechnet, um sicherzustellen, dass der Abstand von Grundlinie zu Grundlinie gleich ist mit (d. h. dem Wert von) `\baselineskip`:

![Paragraphanatomie2b.png](/files/14c6a3ef9a70b7051be86a6e7769c99db4ca4eda)

* Das nächste Bild stellt gesetzte Zeichen als Boxen dar: um zu visualisieren, wie TeX-Engines Zeichen verarbeiten, um Zeilenumbrüche zu erzeugen:

![Paragraphanatomie3.png](/files/340182c0f5939ccee0e284f43615359bbcca7727)

* Das nächste Bild zeigt Boxen in Boxen: die größeren Absatzzeilen (Boxen), die kleinere Boxen (einzelne Zeichen) enthalten:

![Paragraphanatomie5.png](/files/e9f3ae1ea4d33ebf9f49d5ab3c5cbd3af4017710)

* Das nächste Bild zeigt den Abstand zwischen Wörtern in jeder Zeile: Diese Zwischenwortabstände entstehen durch die Umwandlung von Leerzeichen in flexible Glues, die gedehnt oder geschrumpft werden, um die korrekte Länge für jede Textzeile zu erzeugen. Beachten Sie genau, dass die Größe dieser Abstände von Zeile zu Zeile variiert:

![Paragraphanatomie4.png](/files/8be60f7cef3fae568f1c0dbe2cdf90bfedf0212b)

* Das nächste Bild kombiniert die Zeichenboxen und die entsprechenden Glues (Leerraum), die zwischen einzelnen Wörtern platziert sind:

![Paragraphanatomie6.png](/files/a5275b49e9cab4923030dce2fa62ac92f40e55ed)

### Visualisierung anderer Arten von Absatz-Glue

Die folgenden Absätze wurden ebenfalls mit LuaTeX gesetzt und verarbeitet, um andere Arten von Glue innerhalb und zwischen einem Paar von Absätzen zu zeigen. Beachten Sie, dass `\rightskip` und `\leftskip` beide auf 0pt gesetzt sind, daher werden sie nicht angezeigt:

* **`\parskip`** Glue (hellblau), der zwischen den beiden gesetzten Absätzen platziert ist;
* einzelne Wörter werden getrennt durch ***Zwischenwort-Glue*** (gelb), der durch die Umwandlung von Leerzeichen im Eingabetext in variablen Weißraum (Glue) im gesetzten Ergebnis erzeugt wird. Aus Zwischenwortabständen entstehender Glue wird gedehnt oder geschrumpft, um visuell ansprechende Zeilenumbrüche zu erreichen;
* **`\baselineskip`** Glue (hellgrün), der zwischen den Zeilen platziert ist — die genaue Menge an `\baselineskip` Glue wird mit dem unten beschriebenen Mechanismus berechnet;
* **`\lineskip`** Glue (rot), der im zweiten Absatz verwendet wird — aufgrund des niedrigen Kastens in der vorletzten Zeile;
* **`\parfillskip`** Glue (dunkelgrün), der am Ende der letzten Zeile in jedem Absatz platziert ist.

![](/files/7485590d76c0670e1cdcae43d92e302eb3718265)

### Umgang mit tieferen (oder höheren) Zeilen (Boxen)

Wie die Grafiken im [vorherigen Abschnitt](#paragraph-structure)zeigen, ist ein gesetzter Absatz ein vertikaler Stapel von „Boxen“, getrennt durch etwas Weißraum, den TeX „Glue“ nennt. Während der Absatz verarbeitet wird und die einzelnen Zeilen (Boxen) gestapelt werden, wächst die vertikale Liste (der Stapel) in *nach unten* Richtung, zum unteren Rand der Seite. Obwohl TeX/LaTeX versuchen sicherzustellen, dass Absatzzeilen mit Grundlinien in einem konstanten Abstand von `\baselineskip`gestapelt werden, ist das nicht immer möglich, da bestimmte Zeilen eine größere als übliche Höhe oder Tiefe haben können.

Die Höhe und Tiefe jeder Absatzzeile wird durch den maximalen Abstand bestimmt, um den der Inhalt dieser Zeile über oder unter die Grundlinie hinausreicht; folglich sind Absätze, die Material mit einer relativ großen Höhe oder Tiefe enthalten, wie Inline-Mathematik oder Grafiken, wahrscheinlich dazu geeignet, einzelne Zeilen mit entsprechend großen Höhen und/oder Tiefen zu erzeugen. Für solche Zeilen kann TeX/LaTeX sie möglicherweise nicht so stapeln, dass ihre Grundlinien von anderen Zeilen durch den `\baselineskip` Abstand getrennt sind. Offensichtlich benötigen TeX/LaTeX einen „Fallback-Mechanismus“, um solche Zeilen zu behandeln, indem sie *berechnen* einen geeigneten Abstand zum Einfügen zwischen jedem Paar von Zeilen, die von großen Höhen und/oder Tiefen betroffen sind.

#### \lineskip und \lineskiplimit (TeX-Primitive)

Dieser Fallback-Mechanismus umfasst die Parameterbefehle `\lineskip` und `\lineskiplimit` zusammen mit einem dritten Parameter namens `\prevdepth`. Leser, die an weiteren Details interessiert sind, können zum Artikelabschnitt springen [*Wie der Abstand (Glue) zwischen Absatzzeilen berechnet wird*](#how-the-space-glue-between-paragraph-lines-is-calculated).

Das folgende Beispielprojekt setzt einen einzelnen Absatz, dessen letzte Zeile aufgrund einer verschobenen Textbox (`\hbox`) eine relativ große Tiefe hat. Der Absatz wird mit diesen Einstellungen gesetzt:

```latex
\setlength{\baselineskip}{12pt}
\setlength{\lineskip}{3.5pt}
\setlength{\lineskiplimit}{2pt}
\setlength{\parindent}{20pt}
```

Verwenden Sie den Link unter dem folgenden Code, um ein Overleaf-Projekt zu öffnen:

```latex
\documentclass{article}
% Verwenden Sie eine praktisch kleine Seitengröße
\usepackage[paperheight=16cm,paperwidth=12cm,textwidth=8cm]{geometry}
% Einige wichtige Parameter setzen
\setlength{\baselineskip}{12pt}
\setlength{\lineskip}{3.5pt}
\setlength{\lineskiplimit}{2pt}
\setlength{\parindent}{20pt}
% Eingabedatei, die \testpar definiert
\input testpar.tex
\title{Ein Beispielfortsatz für lineskip}
\begin{document}
\testpar % Ein Makro, das im Overleaf-Projekt erstellt wurde
\end{document}
```

&#x20;[Öffnen Sie dieses Beispiel in Overleaf.](https://www.overleaf.com/docs?engine=\&snip_name\[]=main.tex\&snip\[]=%5Cdocumentclass%7Barticle%7D%0A%25+Use+a+conveniently+small+page+size%0A%5Cusepackage%5Bpaperheight%3D16cm%2Cpaperwidth%3D12cm%2Ctextwidth%3D8cm%5D%7Bgeometry%7D%0A%25+Set+some+important+parameters%0A%5Csetlength%7B%5Cbaselineskip%7D%7B12pt%7D%0A%5Csetlength%7B%5Clineskip%7D%7B3.5pt%7D%0A%5Csetlength%7B%5Clineskiplimit%7D%7B2pt%7D%0A%5Csetlength%7B%5Cparindent%7D%7B20pt%7D%0A%25+Input+file+defining+%5Ctestpar+%0A%5Cinput+testpar.tex%0A%5Ctitle%7BA+sample+paragraph+for+lineskip%7D%0A%5Cbegin%7Bdocument%7D%0A%5Ctestpar+%25+A+macro+created+in+the+Overleaf+project%0A%5Cend%7Bdocument%7D\&snip_name\[]=testpar.tex\&snip\[]=%5Cnewcommand%7B%5Ctestpar%7D%7B%5CTeX%7B%7D+uses+the+name+%60%60glue%27%27+to+describe+%60%60flexible+white+space%27%27+used+to+separate+any+typeset+item+which+can+appear+on+the+page.+For+example%2C+individual+words%2C+and+whole+lines%2C+within+a+typeset+paragraph+are+seperated+by+%60%60glue%27%27.+%5CTeX%7B%7D+engines+identify+%28give+a+name+to%29+different+types+of+glue+according+to+where+it+is+being+used.+For+example%2C+each+line+is+separated+by+%5Ctexttt%7B%5Cstring%5Cbaselineskip%7D+glue+or%2C+occasionally%2C+%5Ctexttt%7B%5Cstring%5Clineskip%7D+glue%2C+depending+on+%5CTeX%27s+calculations.+Let%27s+trigger+use+of+%5Ctexttt%7B%5Cstring%5Clineskip%7D+glue+by+adding+an+%5Ctexttt%7B%5Cstring%5Chbox%7D+which+has+a+large+depth+due+to+the+%5Ctexttt%7B%5Cstring%5Clower%7D+command%3B+for+example%2C+the+box%0A+%5Clower5pt%5Chbox%7BLOW+BOX%7D+will+cause+%5CTeX%7B%7D+to+insert+%5Ctexttt%7B%5Cstring%5Clineskip%7D+glue+instead+of+%5Ctexttt%7B%5Cstring%5Cbaselineskip%7D+glue.%5Cpar%7D\&main_document=main.tex)

Dieses Beispiel erzeugt die folgende Ausgabe:

![Beispiel zur Demonstration von \lineskip-Glue](/files/94812a428401b0676361a4ed8f0aeeaee65155a5)

Die folgende Grafik verwendet eine annotierte Version des Absatzes, der vom vorherigen Overleaf-Projekt erzeugt wurde. Hier zoomen wir hinein, um uns auf die letzte Absatzzeile zu konzentrieren, und zeigen die Verwendung von `\lineskip` Glue (rot dargestellt), verursacht durch die Tiefe der verschobenen Textbox:

![Bild, das TeX \lineskip-Glue zeigt](/files/6fdf2437adbc9658645e08162043a72acde9243a)

Die letzte Zeile des Absatztextes hat eine größere als übliche Tiefe, wodurch TeX daran gehindert wird, den konstanten Abstand von Grundlinie zu Grundlinie beizubehalten, der durch den Wert `\baselineskip` (12pt) festgelegt ist. Wie durch Pfeile auf der rechten Seite der Grafik angedeutet, versuchen TeX/LaTeX, einen festen Abstand (12pt) zwischen Zeilenpaaren sicherzustellen — den Wert von `\baselineskip`. Allerdings hat TeX für das letzte Zeilenpaar sie um mehr als 12pt getrennt und verwendet den Wert von `\lineskip` für den Zwischenlinien-Glue anstelle eines mit `\baselineskip`.

berechneten Wertes.

### Wie der Abstand (Glue) zwischen Absatzzeilen berechnet wird

Die folgenden Abschnitte untersuchen und erklären die Einzelheiten von TeXs Berechnungen der Zwischenlinien-Glue-Werte. *Für unsere aktuellen Zwecke werden wir* ganz kurz

den Seitenaufbauprozess von TeX erwähnen, wenn auch auf stark vereinfachte Weise! Sobald TeX das Setzen eines Absatzes beendet hat, indem es die Silbentrennung abgeschlossen und die Zeilenumbrüche bestimmt hat, können Sie sich diese Absatzdaten als an einem temporären Speicherort abgelegt vorstellen. TeX muss diese Absatzdaten dann zeilenweise an einen neuen Speicherort verschieben, der Material für die aktuelle Ausgabeseite speichert. *nach unten* in Richtung des unteren Randes der Seite. Während es Absatzzeilen auf die aktuelle Seite verschiebt, versucht TeX sicherzustellen, dass diese Zeilen gleichmäßig mit konsistentem vertikalem Abstand (von Grundlinie zu Grundlinie) gesetzt werden, der dem Wert `\baselineskip`entspricht. Wenn eine neue Zeile auf die aktuelle Seite übertragen wird, speichert die TeX-Engine vorübergehend die *Tiefe* dieser Zeile, weil sie verwendet wird, um die Menge an Zwischenlinien-Glue (Weißraum) zwischen dieser Zeile und der danach platzierten Zeile zu berechnen.

#### Glue-Größenberechnungen

Beginnen wir mit einer Zusammenfassung der von TeX-Engines bereitgestellten Funktionen zum Zeilenabstand:

* Beibehaltung eines konstanten Abstands zwischen Grundlinien, eines Abstands gleich `\baselineskip`;
* Bereitstellung von Abstand für Zeilen mit einer relativ großen Höhe oder Tiefe;
* eine Möglichkeit, das Einfügen von Zwischenlinien-Glue auszuschalten — entweder automatisch oder unter Benutzerkontrolle. Zum Beispiel:
  * TeX-Engines deaktivieren automatisch das Einfügen von Zwischenlinien-Glue nach einem Rule im Vertikalmodus;
  * die Makros `\offinterlineskip` und `\nointerlineskip` ermöglichen es Benutzern, das Einfügen von Zwischenlinien-Glue vorübergehend auszuschalten — diese Makros haben unterschiedliche Auswirkungen, wie wir unten sehen werden.

Die Entscheidung, ob Zwischenlinien-Glue hinzugefügt wird und, wenn ja, wie viel und von welcher Art, läuft folgendermaßen ab:

* Soll Zwischenlinien-Glue hinzugefügt werden? TeX entscheidet dies, indem es prüft, ob die *Tiefe der zuletzt hinzugefügten Zeile* in der Liste kleiner ist als der spezielle Wert von `–1000pt` (Punkte). Beachten Sie, dass `–1000pt` ein willkürlicher „Sentinel“-Wert ist, der intern von TeX-Engines verwendet wird.
  * **Hinweis**: Der Wert „Tiefe der zuletzt hinzugefügten Zeile“, den TeX intern speichert, ist auch als „vorherige Tiefe“ bekannt. TeX-Engines stellen den Parameterbefehl `\prevdepth`bereit — der unter bestimmten Umständen verwendet werden kann, um *abzurufen* oder *setzen* den Wert der „vorherigen Tiefe“ zu `\nointerlineskip` Der Makro `\prevdepth`.
* TeX prüft, ob `Tiefe der vorherigen Zeile größer als –1000pt`?
  * ***Ja, das ist sie*** (muss Glue hinzufügen):
    * berechne den Wert Δ, wobei Δ = \baselineskip – (Tiefe der vorherigen Zeile) – (Höhe der nächsten Zeile)
    * vergleiche Δ mit dem Wert von `\lineskiplimit`, einem Parameter, der den minimal akzeptablen Abstand zwischen zwei Zeilen definiert, gemessen als der Abstand zwischen der Unterkante der oberen Zeile und der Oberkante der unteren Zeile.
    * Wenn Δ < `\lineskiplimit`:
      * sind die Zeilen zu nah beieinander, also füge den minimal akzeptablen Abstand ein, der ist `\lineskip`
    * Wenn Δ >= `\lineskiplimit`:
      * sind die Zeilen nicht zu nah beieinander, also verwende Δ als die einzufügende Glue-Menge
  * ***Nein, ist es nicht*** (kein Glue hinzufügen):
    * Füge die nächste Zeile (Box) hinzu, ohne irgendeinen Glue einzufügen

Die folgende Grafik fasst den Zwischenlinien-Glue-Prozess zusammen:

![Wie TeX die Zwischenlinien-Glue-Werte bestimmt](/files/717389dad4679ec7bb817a54a7a06de8d5e50849)

### Ein Beispiel für Zwischenlinien-Glue-Berechnungen

Im folgenden Beispiel nehmen wir an, dass TeX/LaTeX die folgenden Parameterwerte der Befehle verwendet:

```latex
\baselineskip=12pt
\lineskip=3.5pt
\lineskiplimit=2pt
```

Wir betrachten die Berechnung des Zwischenlinien-Glue für die ersten beiden Zeilen dieses Absatzes:

![OLV2glue-calcs-step0.png](/files/de7f2ae16b9e3ce54f4f95705274b82815d52a7c)

Im nächsten Bild hat die TeX-Engine die erste Absatzzeile verarbeitet und in die vertikale Liste verschoben, die sie aufbaut. Sie behält die Tiefe dieser Zeile im Auge (`d<sub>1</sub>`) die ist `2.1528` (Punkte):

![OLV2glue-calcs-step1.png](/files/375201dc38329d2cd040fcbc6bad76452461db0b)

Als Nächstes ist TeX bereit, eine zweite Zeile zur Liste hinzuzufügen, die sie aufbaut: Diese Zeile hat eine Höhe (`h<sub>2</sub>`) die ist `6.9444` (Punkte) und, nebenbei bemerkt, eine Tiefe, `d<sub>2</sub>` von `0` (Punkte):

![OLV2glue-calcs-step2.png](/files/192c84c25b7397c0172d11e911e2c289354b3874)

An diesem Punkt muss TeX die Menge an Abstand (Glue, `g<sub>1</sub>`) berechnen, die zwischen diese beiden Zeilen einzufügen ist:

![OLV2glue-calcs-step3.png](/files/7e6b8deab222f0fcd0c218f070fe07fb442d6e90)

Das folgende Bild zeigt die Glue-Berechnungen für dieses Zeilenpaar:

![OLV2glue-calcs-stepA3.png](/files/c991a6e89c9d27df6028f5ca5464ed61de14e472)

Das letzte Bild zeigt die beiden Zeilen, die auf die aktuelle Seite verschoben wurden, wobei die berechnete Menge an Zwischenlinien-Glue zwischen ihnen platziert ist:

![OLV2glue-calcs-step5.png](/files/3933cd6ec87aae0f65b93cc71d6a0e2cd7d56075)

### Noch ein weiterer Parameter: \prevdepth

Wie oben erwähnt, speichert TeX beim Erzeugen eines vertikalen Stapels (einer Liste) von Boxen die Tiefe der zuletzt zu dieser Liste hinzugefügten Box. Dieser gespeicherte Tiefenwert ist als „vorherige Tiefe“ bekannt und kann über den Parameterbefehl `\prevdepth`.

Das `\prevdepth` Befehl kann verwendet werden ***nur*** wenn TeX im Vertikalmodus ist; also zwischen Absätzen oder innerhalb vertikaler Boxen: `\vbox`, `\vtop` oder `\vcenter` (Hinweis: `\vcenter` Boxen können nur im Mathematikmodus verwendet werden).

`\prevdepth` bietet Lese- und Schreibzugriff auf den Wert der „vorherigen Tiefe“:

* um auf den aktuellen Wert von lesen zu können `\prevdepth` können Sie schreiben:

```latex
\the\prevdepth
```

* um den aktuellen Wert von `\prevdepth` auf `einen Wert`, eine Länge in Punkten, mm usw., zu setzen, können Sie schreiben:

```latex
\setlength{\prevdepth}{some value}
```

Wenn Sie versuchen, \verb`\prevdepth` unter Umständen zu verwenden, für die es nicht vorgesehen ist, etwa innerhalb eines Absatzes oder in einer `\hbox` erhalten Sie einen Fehler

```latex
Incorrect \prevdepth.
```

mit zusätzlichen Informationen, dass es nur im Vertikalmodus verwendet werden kann.

#### Verhindern von Zwischenlinien-Glue: \prevdepth und \nointerlineskip

Eine Verwendung von `\prevdepth` ist es, *zu verhindern* dass TeX die Grundlinienberechnungen durchführt, die verwendet werden, um Zwischenlinien-Glue zwischen Elementen in einer vertikalen Liste hinzuzufügen, etwa den Zeilen eines Absatzes. Unter Verwendung von `\prevdepth` zur Darstellung von `Tiefe der vorherigen Zeile` können wir die oben abgebildeten Glue-Berechnungen wie folgt neu formulieren:

```latex
if(\prevdepth > –1000pt)
{
     Δ = \baselineskip — \prevdepth — (height of current line)

     if(Δ < \lineskiplimit)
       interline glue = \lineskip
     else
       interline glue = Δ
}
else
{
     Stapeln Sie die Box, ohne
     irgendeinen Zwischenlinien-Glue hinzuzufügen
}
```

Intern erkennen TeX-Engines einen sogenannten „Sentinel“-Wert von `\prevdepth` der verwendet werden kann, um das Berechnen und Hinzufügen von Zwischenlinien-Glue zu deaktivieren. Dieser Sentinel-Wert ist `–1000pt`der in der ersten Zeile des obigen Pseudocodes zu sehen ist:

```latex
if(\prevdepth > –1000pt)
```

TeX fügt keinen Zwischenlinien-Glue hinzu, es sei denn `\prevdepth` ist größer als `–1000pt`— was den Mechanismus bereitstellt, der vom `\nointerlineskip` Makro verwendet wird, um zu verhindern, dass Baseline-Glue zwischen dem nächsten Paar von Boxen in einer vertikalen Liste hinzugefügt wird.

`\nointerlineskip` hat eine Definition, die äquivalent ist zu:

```latex
\def\nointerlineskip{
\prevdepth–1000pt
}
```

Beachten Sie, dass `\nointerlineskip` bietet eine *einmalige Deaktivierung* der Zwischenlinien-Glue-Berechnungen, weil der Wert von `\prevdepth` kontinuierlich aktualisiert wird, wenn neue Boxen zur aktuellen vertikalen Liste hinzugefügt werden, wie im folgenden Beispiel gezeigt:

```latex
\noindent Die folgenden \verb|\hbox|es werden verarbeitet, wenn \TeX{} sich im sogenannten \textit{outer vertical mode} befindet. Nach der Verarbeitung (dem Setzen) werden diese Boxen an die aktuelle Seite angehängt und vertikal mit dazwischen eingefügtem Zwischenlinien-Glue gestapelt:

\hbox{j}
\hbox{p}
\hbox{g}

Jetzt, unmittelbar nach dem Kasten \verb|\hbox{j}|, setzen wir \verb|\prevdepth| auf \texttt{-1000pt}, wodurch verhindert wird, dass zwischen den Kästen \verb|\hbox{j}| und \verb|\hbox{p}| Zwischenzeilenabstand eingefügt wird:

\hbox{j}\setlength{\prevdepth}{-1000pt}
\hbox{p}
\hbox{g}

Beachten Sie, dass zwischen den Kästen \verb|\hbox{p}| und \verb|\hbox{g}| \textit{tatsächlich} Zwischenzeilenabstand eingefügt wird, weil der Wert von \verb|\prevdepth| aktualisiert wird, nachdem \verb|\hbox{p}| verarbeitet und zur Liste hinzugefügt wurde: Der Wert von \verb|\prevdepth| wird zur Tiefe des Kastens \verb|\hbox{p}|. Wenn \verb|\hbox{g}| zur vertikalen Liste hinzugefügt wird, ist der Wert von \verb|\prevdepth| nicht mehr \texttt{-1000pt}; folglich kann nun Zwischenzeilenabstand hinzugefügt werden.
```

&#x20;[Öffnen Sie dieses Beispiel in Overleaf](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=One-shot+use+of+nointerlineskip\&snip=%5Cdocumentclass%7Barticle%7D%0A%25+Choose+a+conveniently+small+page+size%0A%5Cusepackage%5Bpaperheight%3D16cm%2Cpaperwidth%3D12cm%2Ctextwidth%3D10cm%5D%7Bgeometry%7D%0A%5Cbegin%7Bdocument%7D%0A%5Csetlength%7B%5Cbaselineskip%7D%7B14pt%7D%0A%5Csetlength%7B%5Cparskip%7D%7B1pt%7D%0A%5Csetlength%7B%5Cparindent%7D%7B0pt%7D%0A%25+A+convenience+macro+to+typeset+%5Cprevdepth+in+an+%5Chbox%2C+although+TeX+has+to+be%0A%25+in+a+vertical+mode+when+this+macro+is+used.%0A%5Cnoindent+The+following+%5Cverb%7C%5Chbox%7Ces+are+processed+when+%5CTeX%7B%7D+is+in+so-called+%5Ctextit%7Bouter+vertical+mode%7D.+After+processing+%28typesetting%29%2C+these+boxes+are+appended+to+the+current+page+and+stacked+vertically+with+interline+glue+inserted+between+them%3A%0A%0A%5Chbox%7Bj%7D%0A%5Chbox%7Bp%7D%0A%5Chbox%7Bg%7D%0A%0ANow%2C+immediately+after+after+the+box+%5Cverb%7C%5Chbox%7Bj%7D%7C%2C+we+set+%5Cverb%7C%5Cprevdepth%7C+to+%5Ctexttt%7B-1000pt%7D+which+prevents+interline+glue+being+placed+between+the+boxes+%5Cverb%7C%5Chbox%7Bj%7D%7C+and+%5Cverb%7C%5Chbox%7Bp%7D%7C%3A+%0A%0A%5Chbox%7Bj%7D%5Csetlength%7B%5Cprevdepth%7D%7B-1000pt%7D%0A%5Chbox%7Bp%7D%0A%5Chbox%7Bg%7D%0A%0AObserve+that+interline+glue+%5Ctextit%7Bis%7D+placed+between+the+boxes+%5Cverb%7C%5Chbox%7Bp%7D%7C+and+%5Cverb%7C%5Chbox%7Bg%7D%7C+because+the+value+of+%5Cverb%7C%5Cprevdepth%7C+is+updated+after+%5Cverb%7C%5Chbox%7Bp%7D%7C+is+processed+and+added+to+the+list%3A+the+value+of+%5Cverb%7C%5Cprevdepth%7C+becomes+the+depth+of+the+box+%5Cverb%7C%5Chbox%7Bp%7D%7C.+When+%5Cverb%7C%5Chbox%7Bg%7D%7C+is+added+to+the+vertical+list+the+value+of+%5Cverb%7C%5Cprevdepth%7C+is+no+longer+%5Ctexttt%7B-1000pt%7D%3B+consequently%2C+interline+glue+can+now+be+added.%0A%5Cend%7Bdocument%7D)

Dieses Beispiel erzeugt die folgende Ausgabe:

![Beispiel zur Demonstration des TeX-Parameters \prevdepth](/files/fb576d5138c10a49fe5c25557a224e4977854e94)

#### Zwischenlinien-Glue mit Größe Null: \offinterlineskip

Es ist möglich, den gesamten Zwischenzeilenabstand über den Makrobefehl zu entfernen `\nointerlineskip`, der eine Definition hat, die äquivalent zu folgender ist:

```latex
\def\offinterlineskip{%
\baselineskip=-1000pt
\lineskip=0pt
\lineskiplimit=\maxdimen
}
```

Beachten Sie, dass `\maxdimen` ist `16383.99998pt`, die größte Länge, die TeX verwenden kann.

Die folgende Grafik zeigt die grundlegenden Berechnungen für den Zwischenzeilenabstand und die verschiedenen Parameterwerte, die vom Makro verwendet werden `\nointerlineskip`:

![offinterlineskip](/files/15f317e52555244454417d5929f0afea060395bd)

Die folgende Grafik zeigt den Pseudocode-Ausschnitt, der sich aus dem Einsetzen der `\nointerlineskip` Makrowerte in die Berechnungen für den Zwischenzeilenabstand ergibt. Sie zeigt, wie das `\nointerlineskip` Makro arbeitet, indem es Werte für `\baselineskip` und `\lineskiplimit` setzt, sodass der Zwischenzeilenabstand immer `\lineskip` Abstand von `0pt`.

![offinterlineskip](/files/5214a416ddb6d61c64f44e595718d8e8336f2deb)

#### \offinterlineskip und nicht-null \lineskip

Das `\nointerlineskip` Makro setzt `\lineskip` auf Null, aber wie das folgende Overleaf-Projekt zeigt, können Sie `\nointerlineskip` mit nicht-null Werten von `\lineskip` kombinieren, um Zeilenabstandseffekte zu erzielen.

```latex
\documentclass{article}
\title{Demonstration von nicht-null \lineskip}
Wählen Sie eine praktisch kleine Seitengröße
\usepackage[paperheight=16cm,paperwidth=12cm,textwidth=8cm]{geometry}
\begin{document}

\offinterlineskip % Dies setzt \lineskip auf 0pt

\setlength{\lineskip}{5pt} % Wir wollen einen von null verschiedenen \lineskip

\input text.tex % Eine generierte TeX-Datei, die die Makros definiert
% \mytextA und \mytextB, die jeweils einen Absatz setzen

\mytextA % Einen Absatz setzen

% Nun \lineskip in einen flexiblen Glue-Wert ändern und setzen
% einen weiteren Absatz setzen

\setlength{\lineskip}{5pt plus5pt minus5pt}

\mytextA

\end{document}
```

&#x20;Öffnen Sie dieses Beispiel als Overleaf-LaTeX-Projekt

Dieses Beispiel erzeugt die folgende Ausgabe:

![Demonstration des LaTeX-Makros \offinterlineskip](/files/4ea51e05eae3b9a739ea3c2bf54c3b0bd23e76da)

Sie können die Wirkung(en) der Verwendung von `\offinterlineskip` und `\lineskip` (und anderer Abstandsbefehle), indem Sie sie in einer Gruppe einschließen:

```latex
\begingroup
\offinterlineskip
\setlength{\lineskip}{5pt}
...Ihr(en) Absatz/Absätze hier

\endgroup
```


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://overleaf-pro.ayaka.space/latex/de/formatierung/04-articles-how-to-change-paragraph-spacing-in-latex.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
