zentrieren eines 2-zeiligen Text über 3 Zeilen

Tabellen und Grafiken erstellen und anordnen


fploink
Forum-Anfänger
Forum-Anfänger
Beiträge: 36
Registriert: Mo 15. Feb 2010, 15:09

zentrieren eines 2-zeiligen Text über 3 Zeilen

Beitrag von fploink »

Hallo,
ich hab ein Problem mit dem zentrieren über mehrere Zeilen.
Konkret möchte ich bei meinem Minimalbeispiel das Wort "Schifffahrt", das über zwei Zeilen geht, über die drei Zeilen des Tabellenkopfes zentrieren.

Kann mir da jemand weiterhelfen?
\documentclass[12pt]{scrreprt}

\usepackage[T1]{fontenc}
\usepackage{longtable}
\usepackage{lmodern}
\usepackage{tabularx}
\usepackage{multirow}								
\newcolumntype{C}[1]{>{\centering\arraybackslash}p{#1}} % zentrierte Spalten mit Breitenangabe 
\newcolumntype{R}[1]{>{\raggedleft\arraybackslash}p{#1}} % rechtsbündig mit Breitenangabe 
\newcolumntype{L}[1]{>{\raggedright\arraybackslash}p{#1}} % linksbündig mit Breitenangabe 

\begin{document}

\begin{tabular}{|C{1.3cm}|C{2.4cm}|C{2.45cm}|}
\hline 
\multicolumn{1}{|c|}{\multirow{3}{*}{{\bf{Text 1}}}}& \textbf{Gebäude-}& {\textbf{Schiff-}} \\ 
& \textbf{grund-}  &\bf{fahrt}  \\ 
 & \textbf{fläche} & \\ 
\hline
Hallo &    20 &       23  \\
\hline
\end{tabular}

\end{document}
Danke

mfg Florian

Benutzeravatar
KOMA
TeX-Entwickler
TeX-Entwickler
Beiträge: 2958
Registriert: Fr 4. Jul 2008, 17:28
Kontaktdaten:

Beitrag von KOMA »

Ich vermute, dass das ein typischer Fall für »weniger ist mehr« ist:
\documentclass[12pt]{scrreprt}
\usepackage[latin1]{inputenc}
\usepackage[ngerman]{babel}
\usepackage[T1]{fontenc}
\usepackage{lmodern}
\newcolumntype{C}[1]{>{\centering\arraybackslash}m{#1}} % zentrierte Spalten mit Breitenangabe

\begin{document}

\begin{tabular}{|C{1.3cm}|C{2.4cm}|C{2.45cm}|}
\hline
Text 1 & \hspace{0pt}Gebäudegrundfläche & \hspace{0pt}Schifffahrt \\
\hline
Hallo &    20 &       23  \\
\hline
\end{tabular}

\end{document}
BTW: Vertikale Linien sind in Tabellen höchst ungünstig. Siehe dazu die einschlägige typografische Literatur sowie die Anleitung zum Paket booktabs (← dies ist ein geprüfter Link, der direkt zur Paketkurzbeschreibung auf CTAN führt!) sowie das Dokument tabsatz.pdf (siehe dazu den zweiten Link in meiner Signatur).

Xenara
Forum-Meister
Forum-Meister
Beiträge: 682
Registriert: Mi 25. Nov 2009, 09:41

Beitrag von Xenara »

Das wäre so auch mein Vorschlag gewesen, KOMA war schneller. Dafür habe ich die Sache mit den vertikalen Linien bereits eingearbeitet ;)
\documentclass[12pt]{scrreprt} 

\usepackage[T1]{fontenc} 
%\usepackage{longtable} 
%\usepackage{lmodern} 
%\usepackage{tabularx} 
%\usepackage{multirow}   

\usepackage{array}
\usepackage{booktabs}
                      
\newcolumntype{C}[1]{>{\centering\arraybackslash}m{#1}} % horizontal und vertikal zentrierte Spalten mit Breitenangabe 
%\newcolumntype{R}[1]{>{\raggedleft\arraybackslash}p{#1}} % rechtsbündig mit Breitenangabe 
%\newcolumntype{L}[1]{>{\raggedright\arraybackslash}p{#1}} % linksbündig mit Breitenangabe 

\begin{document} 

\begin{tabular}{C{1.3cm}C{2.4cm}C{2.45cm}} 
\toprule 
Text 1& \bfseries Gebäude\-grund\-fläche & \bfseries Schiff-\par fahrt \\ 
\midrule 
Hallo &    20 &       23  \\ 
\bottomrule 
\end{tabular} 

\end{document} 
@Markus: Wieso setzt Du noch ein \hspace{0} vor die Einträge?

Benutzeravatar
KOMA
TeX-Entwickler
TeX-Entwickler
Beiträge: 2958
Registriert: Fr 4. Jul 2008, 17:28
Kontaktdaten:

Beitrag von KOMA »

TeX trennt das erste Wort eines Absatzes (also auch das erste Wort in einer \parbox, respektive m- oder b- oder p-Spalte) nicht automatisch. Um die automatische Trennung trotzdem zu ermöglichen, verwende ich \hspace{0pt} als erstes Wort. Das hätte man natürlich auch gleich in die Spaltendefinition mit einbauen können.

Für die automatische Trennung wird natürlich auch die richtige Sprache und die korrekte Eingabecodierung benötigt. Deshalb habe ich in meinem Beispiel beides ergänzt. Danach kann man die Trennung getrost TeX überlassen - solange dabei keine unschönen Trennungen entstehen, was ich keineswegs kontrolliert habe.

Xenara
Forum-Meister
Forum-Meister
Beiträge: 682
Registriert: Mi 25. Nov 2009, 09:41

Beitrag von Xenara »

Alles klar, vielen Dank für die Erläuterungen.

Antworten