PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Zeilenumbruch in Zelle



hpb
28-07-2005, 08:46
Hallo,
ich habe eine sehr textlastige Tabelle --> Die Tabelle soll die ganze verfügbare Breite in Anspruch nehmen. In Zellen, deren Text zu lange ist, sollen die Zeilen im Blocksatz automatisch umgebrochen werden.

Irgendwie habe ich den Eindruck, dass es sich hierbei um ein einfaches Standardproblem handelt. Ich habe aber in meiner Literatur und hier im Forum nichts gefunden. Wer kann mir helfen?

(Im Zweifelsfall einfach den Link zum richtigen Thread hier im Forum. Ich scheine die falschen Suchbegriffe zu verwenden :confused: )

Anbei mein Beispiel, das das Problem verdeutlicht

Danke für die Hilfe,
PETER



\documentclass{scrbook}
\usepackage[latin1]{inputenc}
\usepackage{graphicx}
\usepackage[ngerman]{babel}
\begin{document} % Dokument fängt an
\begin{tabular}{|r|l|}
\hline
1 & mein text ist viel viel viel zu laaaaaaaaaaaaaaaaaaaaaannnnnnnnge für eine ganz gewöhnliche Zeile. Wie bekomme ich einen schönen Blocksatz in dieser Zelle hin? \\
\hline
2 & \begin{minipage}{80mm}Die Verwendung einer \verb|minipage|- Umgebung hat den Nachteil, dass ich nicht weiß, wie breit die Zelle ist. \end{minipage}\\
\hline
\end{tabular}
\end{document}

daswaldhorn
28-07-2005, 09:36
Hallo,

schau dir mal tabularx an.

Grüße, Carsten

P.S: Du musst nicht dein ganzes LaTeX-Beispiel als zip hier anfügen, das Minimalbeispiel reicht doch, was du schon geschrieben hast.

hpb
28-07-2005, 09:49
Danke! Das war ja sehr einfach :)
(Ich hatte nur tabular* gelesen. :cool:

edico
28-07-2005, 17:06
... tabularx dann, wenn ich textweite Strukturen haben will. Ansonsten lässt sich das auch mit der tabular-env stricken:
%
\documentclass{scrbook}
\usepackage[latin1]{inputenc}
\usepackage[ngerman]{babel}
\usepackage{booktabs, tabularx}
\usepackage{array, ragged2e}
\begin{document} %

%\begin{tabular}{|r|l|} \hline
\newcolumntype{Y}{>{\arraybackslash}X}
\begin{tabularx}{\textwidth}{lY}\toprule
1 & mein text ist viel viel viel zu laaaaaaaaaaaaaaaaaaaaaannnnnnnnge für eine ganz gewöhnliche Zeile. Wie bekomme ich einen schönen Blocksatz in dieser Zelle hin? \\\midrule
2 & Die Verwendung einer minipage-Umgebung hat den Nachteil, dass ich nicht weiss, wie breit die Zelle ist. \\\bottomrule
\end{tabularx}
%\end{tabular}

\vspace{10mm}
%\begin{tabular}{p{1cm}p{14cm}}
\begin{tabular}{p{.05\textwidth}p{.85\textwidth}}
\hline
1 & mein text ist viel viel viel zu laaaaaaaaaaaaaaaaaaaaaannnnnnnnge für eine ganz gewöhnliche Zeile. Wie bekomme ich einen schönen Blocksatz in dieser Zelle hin? \\\hline
2 & Die Verwendung einer minipage-Umgebung hat den Nachteil, dass ich nicht wei, wie breit die Zelle ist. \\\hline
\end{tabular}

\end{document}
%
edico

Jollero
31-07-2005, 18:21
Hallo!

Würde mich gern in die Diskussion einklinken- bei mir funktioniert das ganze nicht richtig, denn er schreibt in der 3.Spalte in die 4. hinein. Woran könnte das liegen???????



\newcolumntype{Y}{>{\arraybackslash}X}
\begin{table}[ht]
\centering
\begin{tabularx}{\textwidth}{|l|Y|Y|Y|}
\hline
Bibliothek & Nutzen & Beispiel & Erklärung \\
\hline
\hline
HTML & Rendern von HTML-Tags & $<$html:link title="Linkname" href="seite.jsp"/$>$ & geniert einen Link\\
\hline
LOGIC & Ausgabe von Daten und Umgang mit Collections & $<$logic:iterate id="element" name="colleciton"$>$ \ldots $<$/logic:iterate>$>$ & iteriert über eine Collection\\
\hline
BEAN & Zugriff auf JavaBeans& $<$bean:write name="JavaBean" property="Attribut"$>$ & fügt Inhalt des Attributes der Bean der Ausgabe hinzu\\
\hline
TILES & Aufbau eines einheitlichen Seitenaufbaus & $<$tiles:insert page="layout.jsp"$>$ \ldots $<$/tiles:insert$>$ & fügt die Datei layout.jsp an dieser Stelle ein \\
\hline
\end{tabularx}
\newline
\caption{Übersicht der Struts Custom Tags}
\label{tab:struts_tags}
\end{table}

edico
31-07-2005, 21:48
... deutsche 'Gänsefüsschen' gehören nicht in ein TeX Dokument. Ausserdem sind vertikale oder doppelte Linien in Tabellen obsolet:
%
\documentclass{scrbook}
\usepackage[latin1]{inputenc}
\usepackage[ngerman]{babel}
\usepackage{booktabs, tabularx}
\usepackage{array, ragged2e}
\begin{document} %
%\newcolumntype{Y}{>{\arraybackslash}X}
\newcolumntype{Y}{>{\centering\arraybackslash}X}
%------------------------------------ ^^^^^^^^^ dann schon hier
\begin{table}[ht] %--------
%\centering %-------- was soll das hier?
\begin{tabularx}{\textwidth}{lYYY} \hline
Bibliothek & Nutzen & Beispiel & Erklärung \\\hline
HTML & Rendern von HTML-Tags & $<$html:link title='Linkname' href='seite.jsp'/$>$ & geniert einen Link\\\hline
LOGIC & Ausgabe von Daten und Umgang mit Collections & $<$logic:iterate id='element' name='colleciton'$>$ \ldots $<$/logic:iterate>$>$ & iteriert ber eine Collection\\\hline
BEAN & Zugriff auf JavaBeans& $<$bean:write name='JavaBean' property='Attribut'$>$ & fügt Inhalt des Attributes der Bean der Ausgabe hinzu\\\hline
TILES & Aufbau eines einheitlichen Seitenaufbaus & $<$tiles:insert page='layout.jsp'$>$ \ldots $<$/tiles:insert$>$ & fügt die Datei layout.jsp an dieser Stelle ein \\\hline
\end{tabularx}
\newline
\caption{Übersicht der Struts Custom Tags}
\label{tab:struts_tags}
\end{table}
\end{document}
%
edico

dresdner
22-01-2008, 09:03
Hallo,
ich habe ein ähnliches Problem vorliegen. Mein Minimalbeispiel funktioniert wie es soll, bette ich es aber in mein Gesamtdokument ein, werden die Zellinhalte der letzten fünf Spalten nicht zentriert. Über diesen steht das "Y". Was kann die Ursache dafür sein?



\documentclass[%
11pt,
ngerman, % wird an andere Pakete weitergereicht
a4paper,
BCOR5mm, % Zusaetzlicher Rand auf der Innenseite
DIV12, % Seitengroesse (siehe Koma Skript Dokumentation !)
]{scrreprt}

\usepackage[latin1]{inputenc}
\usepackage{booktabs, tabularx}
\usepackage{array, ragged2e}
\newcolumntype{Y}{>{\centering\arraybackslash}X}



\begin{document}

\begin{table}[H]
\centering
\begin{tabularx}{0.9\textwidth}{lcYYYYY}
\toprule
Silizium & Unterlage & $\sigma_{Start}$ [MPa] & $T_K$ [°C] & $\Delta\sigma_K$ [MPa] & $\Delta\sigma_R$ [MPa] & $\sigma_{Ende}$ [MPa] \\
\midrule
200 nm a-Si, As & Oxid & 4,29 & 262 & 29,8 & 29,4 & 100 \\
400 nm a-Si, As & Oxid & 4,29 & 262 & 29,8 & 29,4 & 100 \\
200 nm a-Si, P & Oxid & 4,29 & 262 & 29,8 & 29,4 & 100 \\
440 nm a-Si, undot. & Oxid & 4,29 & 262 & 29,8 & 29,4 & 100 \\
800 nm Poly, undot. & Oxid & 4,29 & - & - & - & 100 \\
\midrule
200 nm a-Si, As & Nitrid & 4,29 & 262 & 29,8 & 29,4 & 100 \\
400 nm a-Si, As & Nitrid & 4,29 & 262 & 29,8 & 29,4 & 100 \\
200 nm a-Si, P & Nitrid & 4,29 & 262 & 29,8 & 29,4 & 100 \\
440 nm a-Si, undot. & Nitrid & 4,29 & 262 & 29,8 & 29,4 & 100 \\
800 nm Poly, undot. & Nitrid & 4,29 & - & - & - & 100 \\
\midrule
200 nm a-Si, As & NON & 4,29 & 262 & 29,8 & 29,4 & 100 \\
400 nm a-Si, As & NON & 4,29 & 262 & 29,8 & 29,4 & 100 \\
200 nm a-Si, P & NON & 4,29 & 262 & 29,8 & 29,4 & 100 \\
440 nm a-Si, undot. & NON & 4,29 & 262 & 29,8 & 29,4 & 100 \\
800 nm Poly, undot. & NON & 4,29 & - & - & - & 100 \\
\bottomrule
\end{tabularx}
\caption{\emph{FSM}-Ergebnisse der LPCVD-Siliziumfilme}
\label{fig:fsm_erg_ofen}
\end{table}

\end{document}


Danke im Vorraus. :)