Zeilenumbruch innerhalb einer Tabellenzelle einfügen


Wie man einen erzwungenen Zeilenumbruch innerhalb einer Tabellenzelle einfügt.

Wenn man genau in einer Tabellenzelle einen Zeilenumbruch innerhalb des Inhaltes durchführen will, funktioniert das entweder dadurch, dass die Zelle in einer sogenannten p-Spalte ist oder es müssen zusätzliche Befehle beziehungsweise auch zusätzliche Pakete eingebunden werden.

p-Spalte

Bei der p-Spalte handelt es sich um eine Spalte, bei deren Definition die Breite der Spalte mitangegeben wird, die Ausrichtung innerhalb dieser Spalte ist linksbündig. Innerhalb der Zellen dieser p-Spalte kann der Befehl \newline verwendet werden, um damit einen Zeilenumbruch an einer bestimmten Stelle zu setzen.

\documentclass[margin=10pt]{standalone}
%...
\begin{document}
%...
\begin{tabular}{|r|p{3cm}|c|}
\hline
some text & some more \newline text with line break & other text \\
\hline
some text & more text & still more\\
\hline
done & done & done \\
\hline
\end{tabular}
%...
\end{document}

parbox

Eine weitere Möglichkeit einen Zeilenumbruch innerhalb einer Zelle setzen zu können ist die Verwendung des \parbox Befehls. Dabei wird der Zelleninhalt eine Parbox gesetzt, innerhalb derer einen Zeilenumbruch mittel \\ möglich ist. Bei der Nutzung dieser Variante ist darauf zu achten, dass nicht nur die Breite der Parbox als Pflichtangabe gesetzt wurde, sondern auch die Optionen für die Positionierung und die Höhe dieser Box. Wobei die Positionierung nur gesetzt wird, damit die Höhe gesetzt werden kann. Da im Fall, wenn diese Optionen nicht gesetzt wurde, es passieren kann, dass der Inhalt der Zelle doch recht eng an die Linien, falls vorhanden, gesetzt wird.

\documentclass[margin=10pt]{standalone}
%...
\begin{document}
%...
\begin{tabular}{|r|c|c|}
\hline
some text & \parbox[c][25pt]{3cm}{some more\\ text with line break} & other text \\
\hline
some text & more text & still more\\
\hline
done & done & done \\
\hline
\end{tabular}
%...
\end{document}

makecell

Das makecell Paket bietet mit dem \makecell Befehl die Möglichkeit einen Zeilenumbruch innerhalb einer Tabellenzelle zu setzen. Dabei spielt es keine Rolle, ob es sich um eine p-Spalte oder einer der anderen Varianten handelt.

\documentclass[margin=10pt]{standalone}
%...
\usepackage{makecell}
%...
\begin{document}
%...
\begin{tabular}{|c|c|c|}
\hline
some text & \makecell{some more \\ text with line break} & other text \\
\hline
some text & more text & still more\\
\hline
done & done & done \\
\hline
\end{tabular}
%...
\end{document}

tabularry

Das tabularry Paket bietet mit der neuen tblr Umgebung eine Umgebung, an die sich was die Verteilung der Spaltenbreite wie die Standardvariante tabular verhält, aber es ermöglicht unabhängig vom Spaltentyp einen Zeilenumbruch innerhalb einer Tabellenzelle durchzuführen.

\documentclass[margin=10pt]{standalone}
%...
\usepackage{tabularray}
%...
\begin{document}
%...
\begin{tblr}{|c|c|c|}
\hline
some text & {some more \\ text with line break} & other text \\
\hline
some text & more text & still more\\
\hline
done & done & done \\
\hline
\end{tblr}
%...
\end{document}

Eine Antwort zu “Zeilenumbruch innerhalb einer Tabellenzelle einfügen”