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


Das tabularx Paket (Version 2.10 von 2014) ist eines der vielen LaTeX Paket die sich auf den Satz von Tabellen beziehen. Das tabularx Paket stellt in erster Linie eine Verbesserung der tabular* Umgebung dar. Das Paket stellt dafür eine neue Umgebung, die tabularx Umgebung, bereit.

1.1 Einbinden und Optionen

Das Paket wird mit \usepackage{tabularx} eingebunden. es benötigt zusätzlich das array Paket. Das Paket bietet zwei Optionen infoshow und debugshow an, wenn diese beim Einbinden des Paketes gesetzt werden, wird im Logfile, bei Verwendung der tabularx Umgebung, eine entsprechende Ausgabe geschrieben.

1.2 tabularx Umgebung

Der tabularx Umgebung wird eine feste Breite für die Tabelle übergeben. Dadurch kann erreicht werden, dass alle Tabellen die innerhalb des Dokumentes verwendet werden genau die gleiche Breite besitzen. Die gewünschte Breite kann hierbei als absolute Zahl, zum Beispiel 8 cm, oder als relatives Maß mit beispielsweise 0.8textwidth für 80 Prozent der Textbreite angegeben werden. Die Angabe der Breite ist eine Pflichtangabe. Optional kann die Ausrichtung der Tabelle gesetzt werden.

\begin{tabularx}{Breite der Tabelle}[optional Position]{Spalte_1Spalte_2...Spalte_n}
Spalte 1 Eintrag & Spalte 2 Eintrag & ... & Spalte n Eintrag \\
...
\end{tabular}

1.2.1 X Spalten

Darüber hinaus erlaubt die tabularx Umgebung die Verwendung eines zusätzlichen Spaltentyps: die X Spalte. Die Breite dieser X Spalten wird dynamisch festgelegt. Vereinfacht ausgedrückt wird die Breite der X Spalten solange angepasst, bis sie zusammen mit der Summe der Breiten der anderen Spalten, die festgelegte Gesamtbreite der Tabelle erreicht hat. Der Anpassungsprozess lässt sich, wenn die infoshow Option (\usepackage[infoshow]{tabularx}) gesetzt wurde, im Logfile nachvollziehen.

Im Fall, dass die Tabelle nur aus X Spalten besteht, wird die Gesamtbreite auf diese gleichmäßig verteilt. Im Fall, dass die Summe der Breite der anderen Spalten bereits die festgelegte Gesamtbreite übersteigt, erhält man eine Warnung X Columns too narrow (table too wide). Innerhalb der X Spalten erfolgt automatisch ein Zeilenumbruch. Die Ausrichtung der X Spalten ist linksbündig. Für den Fall, dass eine andere Ausrichtung gewünscht wird, kann das tabulary Paket verwendet werden, da dort neben linksbündig, rechtsbündig, zentriert und Blocksatz als Ausrichtung innerhalb der Tabellenspalten möglich sind.

1.2.2 Fußnoten

Die tabularx Umgebung lässt die Verwendung von Fußnoten innerhalb der Tabelle zu. Innerhalb der normalen Tabellenumgebung ist die Verwendung von Fußnoten nicht möglich.

1.2.3 verbatim

Grundsätzlich ist von der Verwendung des \verb Befehls innerhalb der tabularx Umgebung abzuraten. Im Fall, dass er dennoch verwendet wurde, erscheint die folgende Warnung: LaTeX Warning: verb may be unreliable inside tabularx on input line ... Bei der Verwendung von \verb sind die in der Paketdokumentation auf Seite 10 und 11 genannten Beschränkungen zu beachten.

2 Kombinationen

Das Ltxtable Paket stellt eine Kombination aus dem tabularx und dem Longtable Paket dar. Es ermöglicht extra lange Tabelle, die X Spalten besitzen, die über mehrere Seiten gehen.

3 Beispiele

Im ersten Beispiel wird eine Tabelle erstellt, die eine feste Breite von 8 cm besitzen soll und die vier Spalten besitzt. Alle vier Spalten sind X Spalten. Aufgrund der Verteilung der verfügbaren Breite, wird ein Tabelle erstellt deren Gesamtbereite 8 cm beträgt und deren Spalten jeweils 2 cm breit sind.

Quellcode:
\begin{tabularx}{8cm}{|X|X|X|X|}
\hline
In dieser Tabelle & hat jede Zelle genau die & gleich Breite & nämlich gerade 
2cm \\
\hline
Und wie man & dabei leicht erkennen kann & reicht diese Breite nicht bei allen
 & Spalten aus um den gesamten Text darzustellen. \\
\hline
\end{tabularx}
Ausgabe:
In dieser Tabelle hat jede Zelle genau die gleich Breite nämlich gerade 2cm
Und wie man dabei leicht erkennen kann reicht diese Breite nicht bei allen Spalten aus um den gesamten Text darzustellen.

Das folgende Beispiel zeigt eine Tabelle, bei der X Spalten mit normalen Spalten gemischt sind. Bei den normalen Spalten bestimmt sich die Breite anhand des breitesten Eintrags. Als Gesamtbreite für die Tabelle wurde hier die Textbreite (\textwidth) gewählt.

Quellcode:
\begin{tabularx}{\textwidth}{|r|c|X|X|}
\hline
In dieser Tabelle & hat jede Zelle genau die & gleich Breite & nämlich gerade 2cm \\
\hline
Und wie man & dabei leicht erkennen kann & reicht diese Breite nicht bei allen
 & Spalten aus um den gesamten Text darzustellen. \\
\hline
\end{tabularx}
Ausgabe:
In dieser Tabelle hat jede Zelle genau die gleich Breite nämlich gerade 2cm
Und wie man dabei leicht erkennen kann reicht diese Breite nicht bei allen Spalten aus um den gesamten Text darzustellen.

Quelle  
Paketdokumentation: The tabularx package (version number v2.11, last revised 2016/02/03), David Carlisle, http://ctan.org/pkg/tabularx