PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Tabellen: Vertikale Ausrichtung der Zelleninhalte (oder auch: multirows andersrum)



peschmae
25-08-2007, 13:32
Wie immer weiss ich nicht, wo anfangen....

Also, was ich will: Eine Tabelle mit zwei Spalten, wobei die linke Spalte mehrzeilig ist und ich selber Zeilenumbrüche bestimmen kann.
Die Inhalte der rechten Spalte sollen vertikal gesehen oben ausgerichtet sein, d.h. auf derselben Höhe beginnen wie die erste Zeile der linken Spalte.

Minibeispiel wie ich das bis jetzt mache - das was mir hier fehlt ist die vertikale Ausrichtung der Zellinhalte der rechten Tabellenspalte:


\documentclass[a4paper,12pt,DIV12]{scrartcl}
\usepackage{tabularx}

\begin{document}
\begin{tabularx}{\linewidth}{XX}
feld 1,1 & feld 1,2 \\
\begin{tabular}{X}
hier\\
mal\\
mehr\\
zeiliges \\
Zeugs \\
in \\
der\\
Tabelle
\end{tabular} & das steht rechts neben mehrzeilig und soll eigentlich oben sein, nicht mittig in der Zelle
\end{tabularx}
\end{document}

gleicher effekt wenn ich statt tabular eine minipage reinstecke. Interessanterweise ist der Text in der rechten Spalte oben ausgerichtet, wenn in der linken "nur" Text ist, der sich über mehrere Zeilen erstreckt - wo ist denn da der Unterschied?

MfG Peschmä

peschmae
25-08-2007, 13:40
Habe gerade festgestellt, dass ich es verpasst habe zu erwähnen wieso ich nicht einfach \newline verwende.

Der Text in der Linken Spalte soll rechts ausgerichtet sein, wenn ich \newline verwende ist er das aber irgendwie nicht mehr:


\documentclass[a4paper,12pt,DIV12]{scrartcl}

\usepackage{tabularx}

\newcolumntype{Z}{>{\hsize=.5\hsize \itshape\raggedleft\arraybackslash}X}
\newcolumntype{T}{>{\hsize=1.5\hsize}X}

\begin{document}
\begin{tabularx}{\linewidth}{ZT}
feld 1,1 & feld 1,2 \\
hier \newline
mal\newline
mehrzeiliges \newline
Zeugs \newline
in \newline
der\newline
Tabelle \newline
wobei manchmal die Texte auch so lang sein können dass automatisch umgebrochen werden muss
\end{tabularx}
\end{document}


alles was hier in der linken Spalte rechts ausgerichtet wird, ist die letzte Zeile - dort wo automatisch ein Umbruch eingefügt wird, aber nicht bei den Zeilen wo ich selber ein \newline hinstelle.

MfG Peschmä

rais
25-08-2007, 15:43
Moin moin,
wenn ich Dich richtig verstanden habe, willst Du


\documentclass[a4paper,12pt,DIV12]{scrartcl}
\usepackage{tabularx}
\newcolumntype{Z}{>{\hsize=.5\hsize \itshape\raggedleft}X}%<--ausnahmsweise ohne \arraybackslash: sonst wird \\ wohlmöglich als `neue Tabellenzeile´ gedeutet
\newcolumntype{T}{>{\hsize=1.5\hsize}X}
\begin{document}
\begin{tabularx}{\linewidth}{ZT}
feld 1,1 & feld 1,2 \tabularnewline
hier \\
mal\\
mehrzeiliges \\
Zeugs \\
in \\
der\\
Tabelle \\
wobei manchmal die Texte auch so lang sein können dass automatisch umgebrochen werden muss & feld 2,2\tabularnewline
\end{tabularx}
\end{document}

oder mit \newline:


\documentclass[a4paper,12pt,DIV12]{scrartcl}
\usepackage{tabularx,ragged2e}
\newcolumntype{Z}{>{\hsize=.5\hsize \itshape\RaggedLeft\arraybackslash}X}%<-- mit \Ragged... aus ragged2e klappt der Umbruch eh besser;-)
\newcolumntype{T}{>{\hsize=1.5\hsize}X}
\begin{document}
\begin{tabularx}{\linewidth}{ZT}
feld 1,1 & feld 1,2 \\
hier \newline
mal\newline
mehrzeiliges \newline
Zeugs \newline
in \newline
der\newline
Tabelle \newline
wobei manchmal die Texte auch so lang sein können dass automatisch umgebrochen werden muss & feld 2,2\\
\end{tabularx}
\end{document}
?
MfG,

peschmae
25-08-2007, 17:39
Genau das wollte ich erreichen - verwende jetzt die zweite Variante. Danke!

MfG Peschmä