So erstellen Sie mehrere große Tabellen mit HVObox in HVFloat

So erstellen Sie mehrere große Tabellen mit HVObox in HVFloat

Ich habe mehrere breite Tabellen, die ich für ein Buch auf mehrere Seiten aufteilen muss. Die Idee ist, dass die linke Seite die linke Hälfte der Tabelle zeigt, die rechte Seite die rechte Hälfte.

Zum Beispiel so etwas

Bildbeschreibung hier eingeben

Ich habe das Paket hvfloat gefunden, das für 1 Tabelle funktioniert. Wenn ich jedoch mehr als 1 Tabelle erstelle, werden einfach mehrere Kopien derselben Tabelle (die letzte, die in der HVObox gespeichert wird) in das Dokument eingefügt.

Wie erstelle ich mehrere Tabellen wie diese im selben Dokument?

Antwort1

Es handelt sich um schwebende Umgebungen, weshalb es nur funktioniert, wenn genügend Text zwischen diesen doppelseitigen Tabellen (Boxen) vorhanden ist. Andernfalls ist es nicht möglich, das Objekt richtig zu platzieren. Ein funktionierendes Beispiel:

\documentclass[12pt,twoside]{article} 
\usepackage{geometry}
\usepackage{hvfloat,booktabs,blindtext}
\renewcommand\thepage{\Huge\arabic{page}}
\begin{document}

\Blindtext

\savebox\hvOBox{%
\begin{tabular}{l*{18}r} \toprule
    & \textbf{1972} & \textbf{1973} & \textbf{1974} & \textbf{1975} & \textbf{1976}& \textbf{1977} & \textbf{1978} & 
    \textbf{1979} & \textbf{1980} & \textbf{1981} & \textbf{1982} & \ textbf{1983} & \textbf{1984} & \textbf{1985}& 
    \textbf{1986} & \textbf{1987} & \textbf{1988} & \textbf{1989} \\\midrule\addlinespace[3pt] 
    Zeile1&1&3&1&1&1&0&1&1&0&0&0&0&20&0&2&2&2&1\\\addlinespace[3pt]
    Zeile2&1&1&3&1&0&0&0&0&0&0&2&1&3&4&4&6&4&2\\\addlinespace[3pt] 
    Zeile3&2&1&2&1&0&0&0&0&0&0&0&1&5&3&1&7&7&3\\\addlinespace[3pt]
    Zeile4&1&0&5&1&2&0&0&0&0&2&1&0&1&0&3&7&2&1\\\addlinespace[3pt]
    Zeile6&2&1&1&0&0&0&0&0&0&1&2&0&5&2&2&5&4&2\\\addlinespace[3pt]
    Zeile5&0&0&4&2&1&2&2&1&0&0&0&1&1&0&2&5&4&3\\\addlinespace[3pt] 
    Zeile8&0&1&1&0&0&0&1&1&0&3&2&1&2&1&3&5&3&4\\\addlinespace[3pt]
    Zeile9&0&0&0&0&0&1&2&1&0&0&0&0&4&2&1&4&5&2\\\addlinespace[3pt] 
    Zeile10&0&1&3&0&1&0&1&0&0&1&1&0&1&1&1&4&4&1\\\addlinespace[3pt]
    Zeile11&0&2&2&1&1&0&1&0&0&0&0&2&6&1&0&2&1&1\\\addlinespace[3pt] 
    Zeile12&2&0&2&4&1&0&4&0&0&0&0&0&0&0&0&1&0&3\\\addlinespace[3pt]
    Lärm &2&3&0&0&0&0&0&0&0&0&1&0&2&0&0&2&2&2\\\addlinespace[3pt]
    Zeile13&0&1&0&0&1&0&3&0&0&0&0&0&2&0&1&3&0&2\\\addlinespace[3pt]
    Zeile14&0&1&0&0&0&0&0&0&0&0&0&0&3&3&2&1&1&0\\\addlinespace[3pt] 
    Zeile15&0&0&0&0&0&0&0&0&0&1&0&0&4&0&0&3&1&1\\\addlinespace[3pt]
    Zeile16&0&0&0&0&0&1&0&0&0&0&0&0&0&0&3&5&0&1\\\addlinespace[3pt]\midrule
    Artikelgesamt&2&6&13&8&4&3&5&4&0&6&3&5&23&10&8&15&13&1\\ \bottomrule
\end{tabular}}

\hvFloat[doublePage,useOBox,capPos=right,capVPos=top,floatCapSep=12pt]% 
  {table}%
  {}%%%%%%%%%%%%%%
  [A doublepage tabular with a caption on the right side of the 
   right part.]%
   {A caption for a double-sided tabular that will be placed on the right side of the right-hand part of the illustration.}%
  {tab:doublePage0}

\Blindtext[8]

\savebox\hvOBox{%
\begin{tabular}{l*{18}r} \toprule
        & \textbf{1972} & \textbf{1973} & \textbf{1974} & \textbf{1975} & \textbf{1976}& \textbf{1977} & \textbf{1978} & 
    \textbf{1979} & \textbf{1980} & \textbf{1981} & \textbf{1982} & \ textbf{1983} & \textbf{1984} & \textbf{1985}& 
    \textbf{1986} & \textbf{1987} & \textbf{1988} & \textbf{1989} \\\midrule\addlinespace[3pt] 
    Zeile1&1&3&1&1&1&0&1&1&0&0&0&0&20&0&2&2&2&1\\\addlinespace[3pt]
    Zeile16&0&0&0&0&0&1&0&0&0&0&0&0&0&0&3&5&0&1\\\addlinespace[3pt]\ midrule
    Artikelgesamt&2&6&13&8&4&3&5&4&0&6&3&5&23&10&8&15&13&1\\ \bottomrule
\end{tabular}}%%%%%%%%%%%%%%


\hvFloat[doublePage,useOBox,capPos=right,capVPos=top,floatCapSep=12pt]% 
  {table}%
  {}
  [A doublepage tabular with a caption on the right side of the right part.]%
  {A caption for a double-sided tabular that will be placed on the right side of the right-hand part of the illustration.}%
  {tab:doublePage1}
    
\Blindtext
\end{document}

Bildbeschreibung hier eingeben Bildbeschreibung hier eingeben Bildbeschreibung hier eingeben

Ändern Sie die Zeile \Blindtext[8]zwischen den beiden Tabellen in „+“, \Blindtext[4]und es schlägt fehl, da zwischen den Objekten zu wenig Text ist.

Eine Problemumgehung besteht darin,zweiTabellen in der Box oder die Verwendung von nicht schwebenden Umgebungen und das Platzieren der Objekte von Hand auf den gegenüberliegenden Seiten.

verwandte Informationen