Ich versuche mir gerade für meine Tabellen eigene Befehle zu erstellen, um mit Tipparbeit zu ersparen. Jedoch stosse ich dabei auf folgende Unstimmigkeit, dass bei der ersten Tabelle die erste Spalte der Kopfzeile (A) nicht genau zentriert wird. Anscheinend ist nocht ein Leerzeichen hinter dem A vorhanden. Aber woher kommt es? Die erste Tabelle erzeuge ich jedoch unter Verwendung einer eigenen Umgebung. Anbei mein Minimalbeispiel: Open in writeLaTeX
\documentclass{scrreprt} \usepackage{booktabs, longtable, tabu} %% #1 Number of columns %% #2 Column definitions %% #3 Header \newenvironment{MyLongtable}[3]{% \begin{longtabu} to \textwidth {#2}% %---------- Table head on first page ---------- \toprule #3\\ \midrule \endfirsthead % %---------- Table head on other pages ---------- \multicolumn{#1}{l}{\tiny ...continued from previous page...}\\ \toprule #3\\ \midrule \endhead % %---------- Table footer ---------- \hline \multicolumn{#1}{r}{\tiny ...continue on next page...}\\ \endfoot % %---------- Table footer on last page ---------- \bottomrule \endlastfoot }{\end{longtabu}} \begin{document} Bei dieser Tabelle ist die erste Spalte der Kopfzeile nicht genau zentriert. \begin{MyLongtable}{2}{cc}{A & B} AAAAA & BBBBB \end{MyLongtable} Bei dieser Tabelle ist alles in Ordnung: \begin{longtabu}{cc} \toprule A & B\\ \midrule AAAAA & BBBBB\\ \bottomrule \end{longtabu} \end{document} Hat jemand eine Idee? gefragt 05 Jul '14, 12:06 dzaic
Ergebnis 5 von 9
show 4 more comments
|
Die Lösung ist die richtige Verwendung der Umgebung für longtable: Open in writeLaTeX
%% #1 Number of columns %% #2 Column definitions %% #3 Header %% #4 Caption im TOC %% #5 Caption %% #6 Label \newenvironment{MyLongTable}[6]{% \begin{longtabu} to \textwidth {#2}% %---------- Table head on first page ---------- \caption[#4]{#5\label{#6}}\\ \toprule #3\\ \midrule \endfirsthead % %---------- Table head on other pages ---------- \caption[]{(Fortsetzung)}\\ \multicolumn{#1}{l}{\tiny ...continued from previous page...}\\ \toprule #3\\ \midrule \endhead % %---------- Table footer ---------- \hline \multicolumn{#1}{r}{\tiny ...continue on next page...}\\ \endfoot % %---------- Table footer on last page ---------- \bottomrule \endlastfoot }{\end{longtabu}} beantwortet 07 Jul '14, 08:13 dzaic |
Die Zeile
\addtocounter{table}{-1}
führt Dir versteckte Leerzeichen ein. Wenn Du sie auskommentierst, wirst Du sehen, dass die Zentrierung wieder stimmt. Wieso hast Du sie überhaupt drin?Ich kann mir vorstellen, das Erniedrigen des Zählers liegt daran, dass doppelt gezählt wurde, wenn longtable und table versehentlich geschachtelt wurden, und das so "repariert" wurde, nur als Vermutung ins Blaue.
@stefan Möglich. Natürlich gehört eine
longtable
nicht in eine Gleitumgebung, wenn das also der Grund ist, dann sollte die Zeile einfach eintfernt werden.Eigentlich ist das ja kein Problem von
longtabu
wie die Frage impliziert, sondern ein Problem der Definition der eigenen Umgebung. Ein Fall von: Ich habe zusätzliche Leerzeichen/Einzüge in meinem Text, die da nicht hingehören. Woher kommen die?Herzlichen Dank für die Unterstützung.
@clemens Da bei jeder Verwendung von longtable der Zähler hochgesetzt wird, ich jedoch captionof verwende, muss ich den Zähler zurücksetzen.
@Ijon Tichy Du hast absolut Recht. Ich werde versuchen meinen Titel zu ändern.
@dzaic Und warum verwendest Du
\captionof
? Du solltest\caption
verwenden.@Ijon Tichy Weil ich keine Gleichumgebung wünsche und \caption nur in dieser funktioniert.
@dzaic Du liegst falsch.
longtabu
wie schonlongtable
bieten ebenfalls\caption
. Direkt am Anfang der Erklärung zulongtabu
in dertabu
-Anleitung wird das explizit erwähnt und dort auf dielongtable
-Anleitung verwiesen, die das auch zeigt. Nicht zu vergessen, Tabelle 7 derlongtable
-Anleitung, die die interessantesten Aspekte noch einmal zusammenfasst.@Ijon Tichy Du hast absolut Recht! Irgendwie habe ich die wichtigsten Passagen der Anleitungen nicht gründlich genug gelesen. Werde meine Lösung dank deiner Hilfe nun anpassen. Herzlichen Dank!