PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Tabelle Zeilenumbruch?



mawai
02-03-2007, 16:11
Hallo,

Ich habe ein Problem mit meiner Tabelle:

Ich habe die Tabelle mit \begin{tabular}{|c|c|c|c|c|} angelegt.
Jetzt ist diese aber zu breit. Wie kann ich denn einen automatischen Zeilenumbruch definieren?

Momentan löse ich es so:
\begin{tabular}{|c|c|c|c|p{3cm}|}
Dann erfolgt der Zeilenumbruch in der letzten Spalte automatisch. Aber jetzt ist die letzte Spalte nicht mittig sondern linksbündig angeordnet.

Wie mach ich das?

countbela666
02-03-2007, 16:58
\usepackage{array}
...
\begin{tabular}{|c|c|c|c|>{\centering}p{3cm}|}Grüeß
Marcel

mawai
02-03-2007, 17:27
Hallo, hab es exakt so ausprobiert. Package geladen etc.
Geht aber nicht.


\begin{table}[!ht]
\begin{center}
\begin{tabular}{|c|c|c|c|>{\centering}p{3cm}|}
\hline
x &\textbf{x} & \textbf{x} & \textbf{x}& \textbf{x} \\ \hline
x & x & x& x &x \\ \hline
\end{tabular}
\end{center}
\caption{x}
\end{table}

rais
02-03-2007, 20:09
Hallo, hab es exakt so ausprobiert. Package geladen etc.
Geht aber nicht.

ergänze mal


\begin{tabular}{|c|c|c|c|>{\centering\arraybackslash}p{3cm}|}

dabei hab ich bisher gedacht, den \arraybackslash benötigt man für derartige Konstrukte nur in Verbindung mit \newcolumntype -- wieder was gelernt :)

MfG,

mawai
03-03-2007, 01:42
Es geht aber immer noch nicht. Es erfolgt kein Zeilenumbruch, es wird einfach über die Spalte hinausgeschrieben.

bobmalaria
03-03-2007, 09:19
hi,

dann steige doch einfach auf tabularx um

e. hindman
03-03-2007, 09:33
im Header:
\usepackage{array}
\newcolumntype{C}[1]{>{\centering\arraybackslash}p{#1}}
...

\begin{table}[!ht]
\begin{center}
\begin{tabular}{|c|c|c|c|C{3cm}|}
\hline
x &\textbf{x} & \textbf{x} & \textbf{x}& \textbf{x} \\ \hline
x & x & x& x &x \\ \hline
\end{tabular}
\end{center}
\caption{x}
\end{table}

mawai
03-03-2007, 11:12
Das geht leider auch nicht. Wie gesagt, im Prinzip will ich doch einfach die c-Methode mit automatischem Zeilenumbruch wie es bei p der Fall ist.

Bei allen genannten Lösungsvorschläge ist es zwar mittig, aber er schreibt über die Spalte hinaus.


@bobmalaria; was meinst du mit tabularx?

e. hindman
03-03-2007, 12:58
Was schreibst du denn in die Spalte rein? Die C Spalte aus meinem Beispiel wird sehr wohl umgebrochen.
Vergleich mal die drei Tabellen:

\begin{table}[!ht]
\begin{center}
\begin{tabular}{|c|c|c|c|c|}
\hline
x &\textbf{x} & \textbf{x} & \textbf{x}& \textbf{hallo, ich bin ein text. kein besonders sinnvoller, aber länger als 3\,cm} \\ \hline
x & x & x& x &x \\ \hline
\end{tabular}
\end{center}
\caption{c}
\end{table}
\begin{table}[!ht]
\begin{center}
\begin{tabular}{|c|c|c|c|C{3cm}|}
\hline
x &\textbf{x} & \textbf{x} & \textbf{x}& \textbf{hallo, ich bin ein text. kein besonders sinnvoller, aber länger als 3\,cm} \\ \hline
x & x & x& x &x \\ \hline
\end{tabular}
\end{center}
\caption{C}
\end{table}
\begin{table}[!ht]
\begin{center}
\begin{tabular}{|c|c|c|c|p{3cm}|}
\hline
x &\textbf{x} & \textbf{x} & \textbf{x}& \textbf{hallo, ich bin ein text. kein besonders sinnvoller, aber länger als 3\,cm} \\ \hline
x & x & x& x &x \\ \hline
\end{tabular}
\end{center}
\caption{p}
\end{table}

mawai
03-03-2007, 13:20
Hallo, also bei den 3.Fällen funktioniert es. Ich hab wohl wieder ein Spezialfall, da geht es nicht. Ich glaub wegen der Trennung.
Ich will das nach ABC ein Zeilenumbruch erfolgt und alles mittig gesetzt wird....



\begin{table}[!ht]
\begin{center}
\begin{tabular}{|c|c|c|c|C{1cm}|}
\hline
Achse &\textbf{x} & \textbf{x} & \textbf{x}& \textbf{ABC Fall1/Fall2} \\ \toprule
x & x & x& x &x \\ \hline
\end{tabular}
\end{center}
\caption{C}
\end{table}

bobmalaria
03-03-2007, 13:23
tabularx ist eine abwandlung von tabular. hier kann man definieren, dass die tabelle z.b. genau seitenbreite hat.

e. hindman
03-03-2007, 13:45
Die Breite scheint mir hier nicht das Problem zu sein. Der Inhalt der Spalte ist offenbar so gewählt, dass er ungeschickt umgebrochen wird.

Warum nicht einfach tricksen:

\begin{table}[!ht]
\begin{center}
\begin{tabular}{|c|c|c|c|C{2,5cm}|}
\hline
Achse &\textbf{x} & \textbf{x} & \textbf{x}& \textbf{ABC} \\
&&&&\textbf{Fall1 / Fall2} \\ \toprule
x & x & x& x &x \\ \hline
\end{tabular}
\end{center}
\caption{C}
\end{table}

\newline würde auch in Tabellen akzeptiert werden, da passt aber dann aber irgendwie das zentrieren nicht mehr. Warum auch immer.

mawai
03-03-2007, 14:08
Sah zuerst gut aus, geht aber leider immer noch nicht ganz:

ich hab 2.Spalten die ich so behandeln muss, das klappt aber dann nicht....


\begin{table}[!ht]
\begin{center}
\begin{tabular}{|c|c|c|C{2,5cm}|C{2,5cm}|}
\hline
Achse &\textbf{x} & \textbf{x} & \textbf{ABC} \\ &&&&\textbf{Fall1 / Fall2} & \textbf{ABC} \\ &&&&\textbf{Fall1 / Fall2} \\ \toprule
x & x & x& x &x \\ \hline
\end{tabular}
\end{center}
\caption{C}
\end{table}

e. hindman
03-03-2007, 14:19
Der Code ist Käse. Du wirfst mit Zeilen um dich, die aber verschieden viele Spalten haben. Mit c&p kommt man in Tabellen selten weit.
Vielleicht teilst du uns erstmal mit, was du überhaupt erreichen willst, so wirklich klar ist mir das nicht geworden.

e. hindman
03-03-2007, 14:30
Oder meintest du so:

\begin{table}[!ht]
\begin{center}
\begin{tabular}{|c|c|c|c|C{2,5cm}|C{2,5cm}|}
\hline
Achse &\textbf{x} & \textbf{x} & \textbf{x}& \textbf{ABC} & \textbf{ABC} \\
&&&&\textbf{Fall1 / Fall2} &\textbf{Fall1 / Fall2} \\ \toprule
x & x & x& x &x &x\\ \hline
\end{tabular}
\end{center}
\caption{C}
\end{table}

mawai
03-03-2007, 15:01
der Code war wirklich Käse. Habs jetzt auch kapiert. bin glücklich, das war genau das was ich wollte

:)