Spaltenbreite von longtables verändern

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: Spaltenbreite von longtables verändern

von KOMA » Do 1. Jul 2010, 12:11

Noch ein Hinweis: Eine longtable in eine center-Umgebung zu packen ist nicht sinnvoll. Die Standardausrichtung einer longtable-Tabelel ist ohnehin horizontal zentriert. Per optionalem Argument kann man die Ausrichtung ggf. auch ändern. Siehe dazu die longtable-Anleitung.

von fploink » Do 1. Jul 2010, 11:09

Vielen Dank, für deine Antwort und die Hinweise!

mfg

von Xenara » Do 1. Jul 2010, 10:57

Weshalb verwendest du denn multicolumn in der longtable? Die Spalten sind doch sowieso schon als zentriert definiert.
Wenns unbedingt multicolumn mit Umbruch sein soll, dann musst du auch eine Spaltendefinition angeben, die das zulässt. Also etwa die gleiche Definition, die die Spalte per se schon hat (was sich aber natürlich nicht automatisch auf multicolumn auswirkt):
\multicolumn{1}{C{2.5cm}}{extrem langer Text1}
Was mir an deinem Code noch aufgefallen ist:
- Weshalb verwendest du "article" als Dokumentenklasse? "scrartcl" wäre empfehlenswerter.
- Vertikale Linien in Tabellen sind in der Typographie ein Tabu.
- Tabellen und die horizontalen Linien lassen sich mit Hilfe des Pakets "booktabs" schöner setzen, es stellt die Linien \toprule, \midrule, \bottomrule und \cmidrule zur Verfügung und kümmert sich um die Abstände.

Spaltenbreite von longtables verändern

von fploink » Do 1. Jul 2010, 08:59

Hallo,
ich habe ein Problem mit "longtabels"!
Das Problem ist in folgendem Minimalbeispiel dargestellt.
Dabei ist ein Vergleich für eine normale bzw. eine long table dargestellt.
Das Ergebnis soll bei der longtable genauso wie bei der normalen ausschauen.
Wie erreiche ich das?
\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage{longtable}
\usepackage{lmodern}
\usepackage{tabularx}				
\newcolumntype{C}[1]{>{\centering\arraybackslash}p{#1}} % zentrierte Spalten mit Breitenangabe 
\newcolumntype{R}[1]{>{\raggedleft\arraybackslash}p{#1}} % rechtsbündig mit Breitenangabe 
\newcolumntype{L}[1]{>{\raggedright\arraybackslash}p{#1}} % linksbündig mit Breitenangabe 

\begin{document}


\begin{table}
\centering
\begin{tabular}{|C{2.5cm}|C{1.5cm}|C{2.5cm}|}
\hline
  extrem langer Text 1         & Text 2  & langer Text 3 \\
\hline\hline
       Wert &       1 &      2 \\
\hline
\end{tabular}  
\end{table}



\begin{center}
\begin{longtable}{|C{2.5cm}|C{1.5cm}|C{2.5cm}|}

\hline \multicolumn{1}{|c|}{extrem langer Text1} & \multicolumn{1}{c|}{Text2}& \multicolumn{1}{c|}{langer Text3} 

\\ \hline \hline 
\endfirsthead

\multicolumn{3}{c}
{{\bfseries \tablename\ \thetable{} -- Fortsetzung von der vorigen Seite}} \\
\hline \multicolumn{1}{|c|}{extrem langer Text1} &
\multicolumn{1}{c|}{Text2} &
\multicolumn{1}{c|}{langer Text3}  \\ \hline 
\endhead

\hline \multicolumn{3}{|c|}{{Fortsetzung auf der nächsten Seite}} \\ \hline \hline
\endfoot

\hline \hline
\endlastfoot

          Wert &       1 &      2 \\


\end{longtable}
\end{center}

\end{document}
Die erste Spalte soll nur 2.5cm breit sein! Bei der "normalen" table erfolgt der Umbruch automatisch.
Wie ist das bei der longtable möglich bzw. wie kann man händisch einen zweizeiligen Tabellenkopf erstellen.

Hoffe mir kann da jemand weiterhelfen.

mfg Florian

Nach oben