Zentrieren mehrseitiger, langer Tabellen in Querformatseiten

Zentrieren mehrseitiger, langer Tabellen in Querformatseiten

Ich versuche, eine lange Tabelle mit mehreren Seiten (mit einigen Zellen mit langem Text) im landscapeModus vertikal zu zentrieren. Ich verwende xltabularund , threeparttablexum diese Tabelle zu erstellen. Obwohl die Tabelle erfolgreich generiert werden kann (siehe unten das MWE), wird sie auf den Seiten nicht vertikal zentriert angezeigt (Screenshots beigefügt).

Ich habe \centering, \begin{center}, \vfill, und ausprobiert \vspace*{\fill}, wie in anderen Beiträgen erwähnt, aber offensichtlich funktioniert keines davon für diesen Zweck. Ich wäre für jeden Rat oder jede Lösung für dieses Problem sehr dankbar.

Hier ist das MWE:

\documentclass[12pt]{article}
\usepackage[margin=1in]{geometry} 
\usepackage{xltabular,threeparttablex}
\usepackage{booktabs}
\usepackage{pdflscape}
\usepackage{lipsum}

\begin{document}

\begin{landscape}

\begin{ThreePartTable}

    \begin{TableNotes}
        $^*$ \lipsum[1]
    \end{TableNotes}
    
    \begin{xltabular}{\linewidth}{p{2cm}XX}
 
        \caption{TableName.} \\ 
        \toprule
        Column1 & Column2 & Column3  \\ \midrule
        \endfirsthead

        \multicolumn{3}{c}{Table \thetable~({\it continued})} \\[1pt]
        \toprule
        Column1 & Column2 & Column3  \\ \midrule
        \endhead
        
        \bottomrule
        \multicolumn{6}{r}{\footnotesize ({\it continued on next page})}
        \endfoot

        \bottomrule
        \insertTableNotes
        \endlastfoot
        
        Row1 & \lipsum[1] & \lipsum[1] \\
        Row2 & \lipsum[2] & \lipsum[2] \\
        Row3 & \lipsum[3] & \lipsum[3] \\
        Row4 & \lipsum[4] & \lipsum[4] 

    \end{xltabular} 

\end{ThreePartTable}

\end{landscape}

\end{document}

Hier sind die Bilder, die zeigen, dass sich die Tabelle nicht in der Mitte der Seiten befindet: Bildbeschreibung hier eingeben Bildbeschreibung hier eingeben

Antwort1

Da die vertikale Zentrierung der Tabellenfragmente von größter Bedeutung zu sein scheint, müssen Sie möglicherweise auf die Erstellung der Tabelle auf der Grundlage einer einzigen xltabularUmgebung verzichten. Stattdessen sollten Sie sich überlegen, ob Sie das rotatingPaket und seine sidewaystableUmgebung verwenden möchten – eine sidewaystableUmgebung pro Seite und eine tabularxUmgebung pro seitenstabiler Umgebung. Vermutlich möchten Sie nur eine tablenotesUmgebung für alle drei (?) Tabellen. Wenn das der Fall ist, möchten Sie diese tablennotesUmgebung wahrscheinlich auf der letzten Seite platzieren.

Und prüfen Sie, ob Sie das captionPaket und seine \ContinuedFloatDirektive einsetzen können, um eine gemeinsame Tabellennummer für alle seitenstabilen Umgebungen zu generieren.

Die folgenden Screenshots zeigen hoffentlich, dass alle drei Tabellenfragmente innerhalb einer Seite vertikal zentriert sind.

Bildbeschreibung hier eingeben


Bildbeschreibung hier eingeben


Bildbeschreibung hier eingeben

\documentclass[12pt]{article}
\usepackage[margin=1in]{geometry} 
\usepackage{tabularx} % for 'tabularx' env. and 'X' col. type
\usepackage{ragged2e} % for '\RaggedRight' macro
\newcolumntype{L}{>{\RaggedRight}X} % suppress full justification
\usepackage{rotating} % for 'sidewaystable' environment
\usepackage{threeparttable}
\usepackage{booktabs}
\usepackage{caption}  % for '\ContinuedFloat' macro
\usepackage{lipsum}   % for filler text

\begin{document}

% first page
\begin{sidewaystable}
\begin{threeparttable}
\caption{TableName.}
\begin{tabularx}{\textwidth}{@{} p{2cm} LL @{}}
\toprule
Column1 & Column2 & Column3  \\ 
\midrule
Row1 & \lipsum[1]\tnote{**} & \lipsum[1] \\
\midrule[\heavyrulewidth]
\multicolumn{3}{r@{}}{\footnotesize(continued on next page)}
\end{tabularx}
\end{threeparttable}
\end{sidewaystable}

% second page
\begin{sidewaystable}
\begin{threeparttable}
\ContinuedFloat
\caption{TableName, part 2 of 3.}
\begin{tabularx}{\textwidth}{@{} p{2cm} LL @{}}
\toprule
Column1 & Column2 & Column3  \\ 
\midrule
Row2 & \lipsum[2]\tnote{$\dagger$} & \lipsum[2] \\
\addlinespace
Row3 & \lipsum[3] & \lipsum[3]\tnote{$\ddagger$} \\
\midrule[\heavyrulewidth]
\multicolumn{3}{r@{}}{\footnotesize(continued on next page)}
\end{tabularx}
\end{threeparttable}
\end{sidewaystable}

% third page
\begin{sidewaystable}
\begin{threeparttable}
\ContinuedFloat
\caption{TableName, part 3 of 3.}
\begin{tabularx}{\textwidth}{@{} p{2cm} LL @{}}
\toprule
Column1 & Column2 & Column3  \\ 
\midrule
Row4 & \lipsum[4]\tnote{\S} & \lipsum[4] \\
\bottomrule
\end{tabularx}

\bigskip
\footnotesize
\RaggedRight
\begin{tablenotes}[flushleft]
\item[**]         \lipsum[1][1-10] 
\smallskip
\item[$\dagger$]  \lipsum[2][1-10]
\smallskip
\item[$\ddagger$] \lipsum[3][1-10]
\smallskip
\item[\S]         \lipsum[4][1-10]
\end{tablenotes}
\end{threeparttable}

\end{sidewaystable}

\end{document}

Nachtragum die Folgefrage des OP zu beantworten, nicht nur die Tabellen im Querformat zu setzen, sondern auch den PDF-Viewer zu habenAnzeigedie Seiten im Querformat.

Die sidewaystableMethode platziert den Inhalt im Querformat. Wie Sie jedoch festgestellt haben, weist sie den PDF-Viewer nicht an, dieBildschirmanzeigeder Landscape-Tabelle vom Portrait- in den Landscape-Modus.

Wenn Sie diesen Effekt erzielen möchten, schlage ich vor, dass Sie wie folgt vorgehen. Ändern Sie zunächst in der Präambel \usepackage{rotating}in \usepackage{pdflscape}. Ändern Sie dann alle drei Instanzen von \begin{tabularx}{\textwidth}in `\begin{tabularx}{\linewidth}. Ändern Sie drittens das Gesamtlayout von

% first page
\begin{sidewaystable}
...
\end{sidewaystable}

% second page
\begin{sidewaystable}
...
\end{sidewaystable}

% third page
\begin{sidewaystable}
...
\end{sidewaystable}

Zu

\begin{landscape}
% first page
\begin{table}[p]
...
\end{table}

% second page
\begin{table}[p]
...
\end{table}

% third page
\begin{table}[p]
...
\end{table}
\end{landscape}

Anders ausgedrückt: Sie müssen das Gesamtlayout von der Verwendung von drei sidewaystableUmgebungen auf die Verwendung von drei table[p]Umgebungen ändern, die in einer einzigen landscapeUmgebung zusammengefasst sind.

verwandte Informationen