Kein Zeilenumbruch in Tablelle mit tabularx

Antwort erstellen


Diese Frage dient dazu, das automatisierte Versenden von Formularen durch Spam-Bots zu verhindern.
Smilies
:D :) :( :o :shock: :? 8) :lol: :-x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen:

BBCode ist eingeschaltet
[img] ist eingeschaltet
[flash] ist ausgeschaltet
[url] ist eingeschaltet
Smilies sind eingeschaltet

Die letzten Beiträge des Themas

Ich habe die Datenschutzerklärung gelesen und bin damit einverstanden.

   

Wenn du eine Datei oder mehrere Dateien anhängen möchtest, gib die Details unten ein.

Ansicht erweitern Die letzten Beiträge des Themas: Kein Zeilenumbruch in Tablelle mit tabularx

von Sepp99 » Mo 17. Jan 2011, 18:15

Zu diesen Fehlern:

http://w3studi.informatik.uni-stuttgart ... lhbox.html

Der Overfull \hbox Error nervt einen beinahe Zuverlässig jedesmal beim arbeiten mit LaTeX. Dieses Dokument hilft bei der Bekämpfung der Warnung. Eine Overfull hbox ensteht wenn LaTeX eine Zeile nicht umbrechen kann (Zeilenumbruch = NewLine) und die Zeile damit über den Rand hinaussteht. Wenn der Text mehr als 1.5 Punkte hinaussteht wird die Warnung geworfen und die Zeile muss manuell umbrochen werden. Dazu kann man in das betreffende Wort sogenannte geschützte Trennzeichen einfügen. Ein geschütztes Trennzeichen besitzt folgendes aussehen \- Man sollte es zwischen die Silben des Wortes einfügen, damit nach den Silben umbrochen wird.

http://www.apfeltalk.de/forum/latex-new ... 298-3.html

Eine "underfull hbox" bedeutet immer, dass LaTeX den Text nicht exakt in die Zeile ausrichten kann und zu früh umbrechen muss. Das liegt manchmal an fehlenden Trennmöglichkeiten bei seltenen Wörtern, die Folge sind i.A. zu große Wortzwischenräume. Da es innerhalb eines Zitats auftritt, wirst Du die Warnung wahrscheinlich nicht durch Umformulieren beheben können. Ein derart kleiner Badness-Wert von ca. 1000 müsste unkritisch sein, größere Werte (IMHO so ab 5000) besagen, dass die Zeile auch für das menschliche Auge unschön aussehen sollte. Leider hast Du Deine Seitenmaße nicht gepostet. Hast Du einen Screenshot der betreffenden Zeile?

http://www.matheplanet.com/default3.htm ... ogle-Suche

Underfull hbox sagt das in einer Horizontalen Box, wie es z.B. eine Zeile ist, zuwenig Inhalt ist oder anders gesagt zuviel Leerraum. Das heisst z.B. das zwischen den einzelnen Wörtern zu viel Platz ist.

http://www1.ku-eichstaett.de/urz/schriften/ltx209.pdf -->Kapitel 3.1 und 6.3

Gruß, Sepp.-

von sandman85 » Mo 17. Jan 2011, 15:49

Suuuuuper... Vielen Dank!
Jetz schauts so aus, wie ich mir das vorgestellt hab :)

Nur einen kleinen Schönheitsfehler gibts noch. Hier ein kurzer Auszug aus der Logdatei:
Overfull \hbox (15.20139pt too wide) in paragraph at lines 24--24
[]|\T1/ptm/b/n/10.95 Oberflächenkräfte|
[]


Underfull \hbox (badness 10000) in paragraph at lines 24--24
[]|\T1/ptm/m/n/10.95 elektromag.
[]


Underfull \hbox (badness 10000) in paragraph at lines 24--24
[]|\T1/ptm/m/n/10.95 Normal-
[]


Underfull \hbox (badness 10000) in paragraph at lines 24--24
[]|\T1/ptm/m/n/10.95 Schub-
[]
Kann man da noch was gegen machen?

Grüße
Sandman

von Sepp99 » Mo 17. Jan 2011, 15:08

OK - neuer Versuch: LaTeX kann die beiden Worte scheinbar nicht trennen, deshalb mußt Du es unterstützen mit "Sollbruchstellen".
\listfiles
\documentclass[a4paper,pdftex,oneside]{scrbook}
%\usepackage{ngerman}
\usepackage[latin1]{inputenc}
\usepackage[ngerman]{babel}
\usepackage[T1]{fontenc}
\usepackage{times}
\usepackage{graphicx}
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{tabularx}
\begin{document}
\chapter{Grundlagen der numerischen Strömungssimulation}
\begin{table}
\centering
\begin{tabularx}{\textwidth}{|X|X|X|X|X|}
\hline
\multicolumn{2}{|X|}{\textbf{Körperkräfte}}&\multicolumn{3}{X|}{\textbf{Oberflächenkräfte}}\\
\hline
Schwerkraft&elektromag. Kräfte & Druckkraft & \multicolumn{2}{|c|}{Reibungskräfte}\\
\hline
\multicolumn{3}{|X|}{}&Normal\-spannungs\-kraft & Schub\-spannungs\-kraft\\
\hline
\end{tabularx}
\label{tab:momforces}
\caption{Komponenten des Kraftvektors $\vec{F}$}
\end{table}
\end{document} 
Gruß, Sepp.-

von sandman85 » Mo 17. Jan 2011, 14:50

Hmm... Also, so wirklich passt das immer noch net...
Zum einen wird in der letzten Zelle immer noch nicht passend umbrochen (Siehe Bild Fehler2.png im Anhang) und zum Anderen brauch ich schon die 5 Spalten, damit das Ganze so sortiert ist, wie ich mir das eingebildet hab :)
Ich habs mal schnell die Tabelle im Schreibprogramm eines bekannten, kommerziellen Office-Paketes (:)) erstellt, so wie ich mir das in etwa vorstell Siehe Bild Tabelle_Soll.png im Anhang. Nur, dass hier halt die Silbentrennung überhaupt nicht passt, aber das ist ja erstmal wurst... Das muss doch so (nur in besser :)) in Latex auch irgendwie gehn, oder?

Desweiteren hab ich mir mal deine Anmerkung mit den vertikalen Linien zu Gemüte geführt, und ich glaub du hast recht... Sieht wirklich besser aus. Aber ich würd gern erstmal die Tabelle selbst so hinbekommen...

Sorry, dass ich so lang nerv, aber ich kann mir einfach nicht vorstellen, dass das nicht funktioniert...
Dateianhänge
Tabelle_Soll.PNG
Tabelle_Soll.PNG (5.92 KiB) 3507 mal betrachtet
fehler2.PNG
fehler2.PNG (20.59 KiB) 3455 mal betrachtet

von Sepp99 » Mo 17. Jan 2011, 14:33

Nachtrag:
Ich würde die Tabelle normalerweise so anlegen
\listfiles
\documentclass[a4paper,oneside]{scrbook}
%\usepackage{ngerman}
\usepackage[latin1]{inputenc}
\usepackage[ngerman]{babel}
\usepackage[T1]{fontenc}
\usepackage{times}
\usepackage{graphicx}
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{booktabs}
\usepackage{blindtext}

\begin{document}
\chapter{Grundlagen der numerischen Strömungssimulation}
\blindtext

\begin{table}[htb]
\captionabove{Komponenten des Kraftvektors $\vec{F}$}
\centering
\begin{tabular}{llll} \toprule		%p{3cm}p{3cm}p{3cm}p{3cm}
	\multicolumn{2}{l}{\textbf{Körperkräfte}} & \multicolumn{2}{l}{\textbf{Oberflächenkräfte}} \\	\midrule
	Schwerkraft & elektromag. Kräfte & Druckkraft & Reibungskräfte \\ \cmidrule(r){4-4}
	& & & Normalspannungskraft \\
	& & & Schubspannungskraft \\
	\bottomrule
\end{tabular}
\label{tab:momforces}

\end{table}

\blindtext

\end{document} 
Gruß, Sepp.-

von Sepp99 » Mo 17. Jan 2011, 13:31

Warum machst Du dann 5 Spalten, wenn Du nur 4 benötigst? Im übrigen wäre das mit einer "einfachen" Tabellenumgebung auch zu machen. Ich habe dein Beispiel noch einmal adaptiert:
\listfiles
\usepackage[latin1]{inputenc}
\usepackage[ngerman]{babel}
\usepackage[T1]{fontenc}
\usepackage{times}
\usepackage{graphicx}
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{tabularx}
\begin{document}
\chapter{Grundlagen der numerischen Strömungssimulation}
\begin{table}
\centering
\begin{tabularx}{\textwidth}{|X|X|X|X|}
\hline
\multicolumn{2}{|X|}{\textbf{Körperkräfte}}&\multicolumn{2}{X|}{\textbf{Oberflächenkräfte}}\\
\hline
Schwerkraft&elektromag. Kräfte&Druckkraft&Reibungskräfte\\
\hline
\multicolumn{3}{|X|}{}&Normalspannungskraft Schubspannungskraft\\
\hline
\end{tabularx}
\label{tab:momforces}
\caption{Komponenten des Kraftvektors $\vec{F}$}
\end{table}
\end{document} 
Vertikale Linien in Tabellen sind nicht unbedingt schön.

Gruß, Sepp.-

von sandman85 » Mo 17. Jan 2011, 12:27

Ne, net ganz.
Die Zellen "Normalspannungskraft" und "Schubspannungskraft" sollten zusammen unter der Zelle "Reibungskräfte" stehen. Deswegen is "Reibungskräfte" auch als Multicolumn angelegt:
\multicolumn{2}{X|}{Reibungskräfte}
Nur leider macht er eben in den beiden o.g. Zellen keinen Zeilenumbruch, sondern schreibt über die Zelle hinaus...

Grüße
Sandman

von Sepp99 » Mo 17. Jan 2011, 11:25

Bei mir siehts so aus (Anhang). Oder meinst Du etwas Anderes?

Gruß, Sepp.-[/img]
Dateianhänge
Bild 1.png
Bild 1.png (10.51 KiB) 3500 mal betrachtet

von sandman85 » Mo 17. Jan 2011, 11:13

Hallo,
vielen Dank für die schnelle Antwort, doch leider wars das nicht.
Die zwei & in der letzten Zeile sollten eigentlich eine leere Zelle machen. Hab das jetzt mal ausgebessert und in die \multicolumn mit reingenommen. Doch leider ist das Ergebnis immer noch dasselbe :(

Aktualisierter Code:
\documentclass[a4paper,pdftex,oneside]{scrbook} 
\usepackage{ngerman} 
\usepackage[latin1]{inputenc} 
\usepackage[ngerman]{babel} 
\usepackage[T1]{fontenc} 
\usepackage{times} 
\usepackage{graphicx} 
\usepackage{amsmath} 
\usepackage{amssymb} 
\usepackage{tabularx} 
\begin{document} 
\chapter{Grundlagen der numerischen Strömungssimulation} 
\begin{table} 
\centering 
\begin{tabularx}{\textwidth}{|X|X|X|X|X|} 
\hline 
\multicolumn{2}{|X|}{\textbf{Körperkräfte}}&\multicolumn{3}{X|}{\textbf{Oberflächenkräfte}}\\ 
\hline 
Schwerkraft&elektromag. Kräfte&Druckkraft&\multicolumn{2}{X|}{Reibungskräfte}\\ 
\hline 
\multicolumn{3}{|X|}{}&Normalspannungskraft&Schubspannungskraft\\ 
\hline 
\end{tabularx} 
\label{tab:momforces} 
\caption{Komponenten des Kraftvektors $\vec{F}$} 
\end{table} 
\end{document} 

von Sepp99 » Mo 17. Jan 2011, 10:40

Du hast in der letzten Zeile ein "&" zuviel, durch den \multicolumn{2}-Befehl
\documentclass[a4paper,pdftex,oneside]{scrbook}
\usepackage{ngerman}
\usepackage[latin1]{inputenc}
\usepackage[ngerman]{babel}
\usepackage[T1]{fontenc}
\usepackage{times}
\usepackage{graphicx}
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{tabularx}
\begin{document}
\chapter{Grundlagen der numerischen Strömungssimulation}
\begin{table}
\centering
\begin{tabularx}{\textwidth}{|X|X|X|X|X|}
\hline
\multicolumn{2}{|X|}{\textbf{Körperkräfte}}&\multicolumn{3}{X|}{\textbf{Oberflächenkräfte}}\\
\hline
Schwerkraft&elektromag. Kräfte&Druckkraft&\multicolumn{2}{X|}{Reibungskräfte}\\
\hline
\multicolumn{2}{|X}{}&Normalspannungskraft&Schubspannungskraft\\
\hline
\end{tabularx}
\label{tab:momforces}
\caption{Komponenten des Kraftvektors $\vec{F}$}
\end{table}
\end{document} 
Gruß, Sepp

Nach oben