Ich habe eine Tabelle und möchte darin gern die Zellen der ersten Zeile zentriert ausrichten. Die Tabellenspalten sind jedoch mit fester Breite in einer tabularx-Umgebung definiert. Wenn ich die zentrierte Ausrichtung mit einer \multicolumn vornehme, wird leider die feste Breite der Spalten zerstört, da der Text nicht mehr umgebrochen wird. Wie kann ich nun also die zentrierte Ausrichtung der 1. Zeile (bzw. einzelner Zellen) vornehmen?

Open in Online-Editor
\documentclass[a4paper,10pt,landscape]{scrartcl}

\usepackage[utf8]{inputenc}
\usepackage[ngerman]{babel}
\usepackage[left=1cm,right=1cm,top=2cm,bottom=1.25cm]{geometry}

\usepackage{lmodern}
\renewcommand*\familydefault{\sfdefault}
\usepackage[T1]{fontenc}

\usepackage{ragged2e,array}
\usepackage{tabularx}
\newcolumntype{L}[1]{>{\RaggedRight\arraybackslash}p{#1}} % Neue Tabellenspalte: linksbündig mit Breitenangabe

\begin{document}

\begin{tabularx}{\textwidth}{|L{5cm}|L{5cm}|L{5cm}|X|}
\hline
Der Text in der 1. Zeile soll zentriert sein & !!! & Der Text in der 1. Zeile soll zentriert sein & !!! \\\hline
Dieser Text & und alle weiteren Zeilen & sollen & linksbündig sein \\ \hline
multicolumn zur zentrierten & Ausrichtung ist leider & keine Lösung & da die definierte Breite der L-Spalte zestört wird \\ \hline
\end{tabularx}

\end{document}

gefragt 14 Apr, 06:13

Andr%C3%A9's gravatar image

André
93151933
Akzeptiert: 77%

@Clemens: Danke, funzt! =)

(14 Apr, 08:20) André

Wenn das wirklich nur die erste Zeile betrifft, könntest Du in den Zellen der ersten Zeile einfach \centering einsetzen. (Und in der letzten Zelle dieser Zeile \centering\arraybackslash bzw. diese Zeile mit \tabularnewline beenden statt mit \\.)

Open in Online-Editor
\documentclass[a4paper,10pt,landscape]{scrartcl}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}

\usepackage[ngerman]{babel}

\usepackage{ragged2e,array}
\usepackage{tabularx}
\newcolumntype{L}[1]{>{\RaggedRight\arraybackslash}p{#1}} % Neue
                                % Tabellenspalte: linksbündig mit
                                % Breitenangabe

\begin{document}

\noindent
\begin{tabularx}{\textwidth}{|L{5cm}|L{5cm}|L{5cm}|X|}
  \hline\centering
    Der Text in der 1.~Zeile soll zentriert sein &
    \centering !!! &
    \centering Der Text in der 1.~Zeile soll zentriert sein &
    \centering !!! \tabularnewline
  \hline
    Dieser Text &
    und alle weiteren Zeilen &
    sollen &
    linksbündig sein \\
  \hline
    multicolumn zur zentrierten &
    Ausrichtung ist leider &
    keine Lösung &
    da die definierte Breite der L-Spalte zerstört wird \\
  \hline
\end{tabularx}

\end{document}
Permanenter link

beantwortet 14 Apr, 09:16

Clemens's gravatar image

Clemens
19.0k113060

@Clemens: Wenn Du \Centering verwendest, brauchst Du weder \arraybackslash noch musst Du \\ durch \tabularnewline ersetzen.

(14 Apr, 16:54) saputello

@saputello stimmt. Ich hatte übersehen, dass ragged2e schon geladen wird…

(15 Apr, 04:12) Clemens

Das geht auch durchaus mit \multicolumn:

Open in Online-Editor
\documentclass[a4paper,10pt,landscape]{scrartcl}

\usepackage[utf8]{inputenc}
\usepackage[ngerman]{babel}
\usepackage[left=1cm,right=1cm,top=2cm,bottom=1.25cm]{geometry}

\usepackage{lmodern}
\renewcommand*\familydefault{\sfdefault}
\usepackage[T1]{fontenc}

\usepackage{ragged2e,array}
\usepackage{tabularx}
\newcolumntype{L}[1]{>{\RaggedRight}p{#1}} % Neue Tabellenspalte: linksbündig mit Breitenangabe
\newcolumntype{C}[1]{>{\Centering}p{#1}} % Neue Tabellenspalte: linksbündig mit Breitenangabe

\begin{document}

\begin{tabularx}{\textwidth}{|L{5cm}|L{5cm}|L{5cm}|X|}
\hline
\multicolumn{1}{|C{5cm}|}{Text in der 1. Zeile soll zentriert sein} & 
\multicolumn{1}{C{5cm}|}{!!!} & 
\multicolumn{1}{C{5cm}|}{Text in der 1. Zeile soll zentriert sein} &
\multicolumn{1}{>{\Centering}X|}{!!!} \\\hline
Dieser Text & und alle weiteren Zeilen & sollen & linksbündig sein \\ \hline
multicolumn zur zentrierten & Ausrichtung ist leider & keine Lösung & da die definierte Breite der L-Spalte zestört wird \\ \hline
\end{tabularx}

\end{document}

Übrigens braucht man bei \RaggedRight und \Centering kein \arraybackslash. Außerdem sei wieder einmal darauf hingewiesen, das vertikale Linien in Tabellen den Lesefluss stören und deshalb ungünstig sind. Siehe auch die Anleitung zu booktabs.

Permanenter link

beantwortet 14 Apr, 16:54

saputello's gravatar image

saputello
18.4k22352

Deine Antwort auf die Frage (nicht auf andere Antworten)
Knebel-Vorschau

Folge dieser Frage

Per E-Mail:

Wenn Du Dich anmeldest, kannst Du Updates hier abonnieren

Per RSS:

Antworten

Antworten und Kommentare

Aktuelle Buch-Infos

LaTeX Cookbook

LaTeX Beginners Guide

Limitierter Rabatt ebook
50% Coupon code tDRet6Y

Markdown-Grundlagen

  • *kursiv* oder _kursiv_
  • **Fett** oder __Fett__
  • Link:[Text](http://url.com/ "Titel")
  • Bild?![alt Text](/path/img.jpg "Titel")
  • nummerierte Liste: 1. Foo 2. Bar
  • zum Hinzufügen ein Zeilenumbruchs füge einfach zwei Leerzeichen an die Stelle ein, an der die neue Zeile sein soll.
  • grundlegende HTML-Tags werden ebenfalls unterstützt

Zugeordnete Themen:

×185
×57

Frage gestellt: 14 Apr, 06:13

Frage wurde angeschaut: 1,192 Mal

Zuletzt aktualisiert: 15 Apr, 04:12