Archiv verlassen und diese Seite im Standarddesign anzeigen : [longtable-Umgebung] Verwendung von \hline
Hallo,
ich habe eine longtable in der ich jede Zeile mit \hline trennen will, beim Seitenumbruch an dieser Trennlinie wird die Linie (\hline) am Ende der Tabelle und auch am Anfang der folgenden Seite gezeichnet. Das führt zu einer Dopplung der Linie, bedingt durch die bereits vorhandenen Linien des Tabellenkopfes/-fusses :confused:
Gibt es, außer einer manuellen Lösung, noch einen Befehl, der selbstständig erkennt, dass an dieser Stelle keine Trennlinie benötigt wird?
vielen Dank,
X-Ray
(ps: Nach einer Lösung dieses Problems habe ich bereits im Forum vergeblich gesucht.)
ich habe eine longtable in der ich jede Zeile mit \hline trennen will, beim Seitenumbruch an dieser Trennlinie wird die Linie (\hline) am Ende der Tabelle und auch am Anfang der folgenden Seite gezeichnet. Das führt zu einer Dopplung der Linie, bedingt durch die bereits vorhandenen Linien des Tabellenkopfes/-fusses :confused:
Gibt es, außer einer manuellen Lösung, noch einen Befehl, der selbstständig erkennt, dass an dieser Stelle keine Trennlinie benötigt wird?
definiere \endfoot ohne \hline
Herbert
Gut, aber dann muss ich leider auf unterschiedliche Linienstärken bzw. auf die Wiederholung der Kopfzeile verzichten.
\begin{longtable}{lp{3.7cm}p{4.9cm}p{4.9cm}}
\toprule
\textbf{...} & \textbf{...} & \textbf{...} & \textbf{...} \\
%\midrule
\endfirsthead
%\toprule
% \textbf{...} & \textbf{...} & \textbf{...} & \textbf{...} \\
%\midrule
\endhead
%\midrule
\multicolumn{4}{r}{{\scriptsize continued on next page \ldots}} \\
\bottomrule
\endfoot
\endlastfoot
\midrule
... & ... & ... & ... \\
\hline
[...]
\bottomrule % Tabellenabschluss
\caption{....}
\end{longtable}
Gut, aber dann muss ich leider auf unterschiedliche Linienstärken bzw. auf die Wiederholung der Kopfzeile verzichten.
was hat die Kopfzeile mit dem Fuß zu tun?
Herbert
Schau doch mal in den Quell-Code, den ich oben mit angeben habe. Die Kommentarzeichen sollen für die ursprüngliche Version gelöscht werden.
Die Kopfzeile besteht oben aus einer fetten Linie (\toprule) und wird unten mit einer halb so fetten Linie (\midrule) abgeschlossen. Dies gilt für den ersten Tabellenkopf und auch für den der auf Folgeseiten dem Rest der Tabelle vorangestellt wird.
Die Fußdefinition sieht ähnlich aus. Hier eine Linie halber stärke (\midrule) und unten als Abschluss eine fette Linie (\bottomrule).
Jede Zeile hat eine dünne Linie (\hline) als Trennung.
Wenn Latex nun einen Umbruch machen muss und das an der \hline so führt dass zu einer überflüßigen dünnen Linie vor der Fußzeile und ebenso eine überflüssige dünne Linie nach der wiederholten Kopfzeile auf den Folgeseiten.
Soweit verständlich? ;)
Schau doch mal in den Quell-Code, den ich oben mit angeben habe. Die Kommentarzeichen sollen für die ursprüngliche Version gelöscht werden.
Die Kopfzeile besteht oben aus einer fetten Linie (\toprule) und wird unten mit einer halb so fetten Linie (\midrule) abgeschlossen. Dies gilt für den ersten Tabellenkopf und auch für den der auf Folgeseiten dem Rest der Tabelle vorangestellt wird.
Die Fußdefinition sieht ähnlich aus. Hier eine Linie halber stärke (\midrule) und unten als Abschluss eine fette Linie (\bottomrule).
Jede Zeile hat eine dünne Linie (\hline) als Trennung.
Wenn Latex nun einen Umbruch machen muss und das an der \hline so führt dass zu einer überflüßigen dünnen Linie vor der Fußzeile und ebenso eine überflüssige dünne Linie nach der wiederholten Kopfzeile auf den Folgeseiten.
Soweit verständlich? ;)
Setze das in die Präambel
\makeatletter
\newcommand\nobreakhline{%
\multispan\LT@cols
\unskip\leaders\hrule\@height\arrayrulewidth\hfill \\*}
\makeatother
und nimm statt \hline nun \nobreakhline
was passiert?
Da du kein vernünftiges und _komplettes_ Beipiel angegeben hast, kann ich
es nicht selbst probieren.
Herbert
was passiert?
Da du kein vernünftiges und _komplettes_ Beipiel angegeben hast, kann ich
es nicht selbst probieren.
Herbert
Verstehe dich nicht, ich habe meinem Quell-Code nur den Inhalt der Zellen gelöscht und der Übersicht wegen um einige Zeilen der Tabelle gekürzt.
Mit deiner Version der \hline gehts auch nicht richtig, siehe Bild. Es wird hier die Zelle auf der nächsten Seite angezeigt und wie du im Bild erkennen kannst ist hier eine Linie zuviel. Da ich zwischen \midrule und \hline unterscheide, kann ich nicht einfach die \midrule in der Definition der Kopfzeile weglassen (siehe Folgenden Code.).
\begin{longtable}{lp{3.7cm}p{4.9cm}p{4.9cm}}
\toprule
\textbf{ID} & \textbf{Option} & \textbf{Function} & \textbf{Increased Performance} \\
\midrule
\endfirsthead
\toprule
\textbf{ID} & \textbf{Option} & \textbf{Function} & \textbf{Increased Performance} \\
%\midrule % weg lassen wie hier gezeigt würde gehen, wäre aber nicht schön.
\endhead
[...]
Verstehe dich nicht, ich habe meinem Quell-Code nur den Inhalt der Zellen gelöscht und der Übersicht wegen um einige Zeilen der Tabelle gekürzt.
Dies hier ist ein vollständiges Beispiel und hat keine zwei linien.
\documentclass[10pt,a5paper]{article}
\usepackage{longtable,booktabs}
\begin{document}
\begin{longtable}{lp{3.7cm}p{2.9cm}p{2.9cm}}
\caption{....}\\\toprule
\textbf{...} & \textbf{...} & \textbf{...} & \textbf{...}\\\midrule
\endfirsthead
\midrule
\textbf{...} & \textbf{...} & \textbf{...} & \textbf{...}\\
\endhead
\multicolumn{4}{r}{{\scriptsize continued on next page \ldots}} \\
\bottomrule
\endfoot
\bottomrule % Tabellenabschluss
\endlastfoot
\Huge Test ... & ... & ... & ... \\\hline
\Huge Test ... & ... & ... & ... \\\hline
\Huge Test ... & ... & ... & ... \\\hline
\Huge Test ... & ... & ... & ... \\\hline
\Huge Test ... & ... & ... & ... \\\hline
\Huge Test ... & ... & ... & ... \\\hline
\Huge Test ... & ... & ... & ... \\\hline
\Huge Test ... & ... & ... & ... \\\hline
\Huge Test ... & ... & ... & ... \\\hline
\Huge Test ... & ... & ... & ... \\\hline
\Huge Test ... & ... & ... & ... \\\hline
\Huge Test ... & ... & ... & ... \\\hline
\Huge Test ... & ... & ... & ... \\\hline
\Huge Test ... & ... & ... & ... \\\hline
\Huge Test ... & ... & ... & ... \\\hline
\Huge Test ... & ... & ... & ... \\\hline
\Huge Test ... & ... & ... & ... \\\hline
\Huge Test ... & ... & ... & ... \\\hline
\Huge Test ... & ... & ... & ... \\\hline
\Huge Test ... & ... & ... & ... \\
\end{longtable}
\end{document}
Herbert
:(
\documentclass[10pt,a5paper]{article}
\usepackage{longtable,booktabs}
\begin{document}
\begin{longtable}{lp{3.7cm}p{2.9cm}p{2.9cm}}
\caption{....}\\\toprule
\textbf{...} & \textbf{...} & \textbf{...} & \textbf{...}\\\midrule
\endfirsthead
\toprule
\textbf{...} & \textbf{...} & \textbf{...} & \textbf{...}\\
\midrule
\endhead
\multicolumn{4}{r}{{\scriptsize continued on next page \ldots}} \\
\bottomrule
\endfoot
\bottomrule % Tabellenabschluss
\endlastfoot
\Huge Test ... & ... & ... & ... \\\hline
\Huge Test ... & ... & ... & ... \\\hline
\Huge Test ... & ... & ... & ... \\\hline
\Huge Test ... & ... & ... & ... \\\hline
\Huge Test ... & ... & ... & ... \\\hline
\Huge Test ... & ... & ... & ... \\\hline
\Huge Test ... & ... & ... & ... \\\hline
\Huge Test ... & ... & ... & ... \\\hline
\Huge Test ... & ... & ... & ... \\\hline
\Huge Test ... & ... & ... & ... \\\hline
\Huge Test ... & ... & ... & ... \\\hline
\Huge Test ... & ... & ... & ... \\\hline
\Huge Test ... & ... & ... & ... \\\hline
\Huge Test ... & ... & ... & ... \\\hline
\Huge Test ... & ... & ... & ... \\\hline
\Huge Test ... & ... & ... & ... \\\hline
\Huge Test ... & ... & ... & ... \\\hline
\Huge Test ... & ... & ... & ... \\\hline
\Huge Test ... & ... & ... & ... \\\hline
\Huge Test ... & ... & ... & ... \\
\end{longtable}
\end{document}
Richtig, deinem Beispiel fehlt auch eine Linie! Siehe meinen vorangegangenen Post. Hier habe ich diese Linie auskommentiert UND auch erwähnt, dass es so geht ABER es nicht zur Gestaltung der ersten Kopfzeile passt, da die Kopfzeile mit einer \midrule abschließt und nicht mit einer \hline ... bitte zoome dein Dokument dann siehst du den unterschied, der auf dem Papier-Ausdruck zu erkennen ist.
Powered by vBulletin® Version 4.2.5 Copyright ©2024 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.