Archiv verlassen und diese Seite im Standarddesign anzeigen : Tabellen
Goldfinger
21-06-2011, 17:32
Ich habe Problem mit einer einfachen Tabelle:
\begin{tabular}{lcrp{1.5 cm}}
text & ich bin ein langer text und schieße aus dem rand.\\
\end{tabular}
Wenn hier in der zweiten Spalte ein längerer Text steht, bricht er nicht um sondern fließt quasi aus dem Rand ins Nirvana.
Kann mir jemand helfen das zu verhindern?
Danke schön.
Du könntest eine p-Spalte benutzen, in der Umbrüche möglich sind. Bei der must du aber die Spaltenbreite fest angeben.
Besser ist das Paket tabularx, das Umbrüche in dem von ihm bereit gestellten Spaltentyp 'X' erlaubt und dessen optimale Breite automatisch berechnet:
\usepackage{tabularx}
...
\begin{tabular}{lX}
text & ich bin ein langer text und schieße aus dem rand.\\
\end{tabular}
Zum Beispiel die zweite Spalte auch, wie die vierte, als p-Spalte definieren und nicht als c-Spalte.
Goldfinger
21-06-2011, 17:47
Ich habe den Code versucht. Da passiert folgendes:
Die eigentliche rechte Spalte fängt unter der linken Spalte an und der Text fließt trotzdem aus dem Rand.
Komisch.
bobmalaria
21-06-2011, 17:48
Du könntest eine p-Spalte benutzen, in der Umbrüche möglich sind. Bei der must du aber die Spaltenbreite fest angeben.
Besser ist das Paket tabularx, das Umbrüche in dem von ihm bereit gestellten Spaltentyp 'X' erlaubt und dessen optimale Breite automatisch berechnet:
\usepackage{tabularx}
...
\begin{tabular}{lX}
text & ich bin ein langer text und schieße aus dem rand.\\
\end{tabular}
das wird so nicht gehen!
richtig muss es heissen
\begin{tabularx}{0.95\textwidth}{lX}
zur erklaerung. X ist ein vom paket tabularx definierter befehl der den verbleibenden platz berechnet und diesen vol ausnutzt. hier z.b. werden 95% der textbreite fuer die tabelle genutzt.
ist der inhalt der zelle sehr viel text kann es helfen das paket ragged2e einzubinden und dann
\begin{tabularx}{0.95\textwidth}{l>{\RaggedRight}X}
zu schreiben.
gruss
Goldfinger
21-06-2011, 17:50
Zum Beispiel die zweite Spalte auch, wie die vierte, als p-Spalte definieren und nicht als c-Spalte.
Super, habs kapiert und jetzt passt es.
Kann ich hier einfach noch einen Rand hinzufügen der ungefähr so aussieht?
(Screenshot)
Ist das aufwendig?
Senkrechte Striche setzt du oben in der Definition der Spalten als senkrechte Striche. |
Sind aber out, hässlich, überflüssig und leserfeindlich.
Waagerechte Striche setzt du mit \hline. Aber guck dir dafür mal das Paket booktabs an, da passt es mit den Abständen besser, als wenn du einfach \hline machst.
bobmalaria
21-06-2011, 18:00
hier mal ein beispiel fuer eine einfache tabelle
\documentclass{article}
\usepackage[ngerman]{babel}
\usepackage[babel]{microtype}
\usepackage{tabularx,booktabs}
\usepackage{lipsum}%test-text
\begin{document}
\begin{tabularx}{.95\textwidth}{lX}
\toprule
Definition & Erklaerung \\
\midrule
Eine definition & \lipsum[1]\\
\hline
Noch eine definition & \lipsum[2]\\
\hline
Und eine dritte & \lipsum[4]\\
\bottomrule
\end{tabularx}
\end{document}
http://www.mrunix.de/forums/attachment.php?attachmentid=4631&stc=1&d=1308672024
das wird so nicht gehen!
richtig muss es heissen
\begin{tabularx}{0.95\textwidth}{lX}
Hoppla---lange nicht mehr benutzt :rolleyes:
Powered by vBulletin® Version 4.2.5 Copyright ©2024 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.