Создайте длинную поперечную таблицу со строгими требованиями к форматированию.

Создайте длинную поперечную таблицу со строгими требованиями к форматированию.

Я знаю, что этот вопрос задают довольно часто, но каким-то образом этот способ, похоже, мне подходит.

У меня есть шаблон из моего университета, показывающий, как должны выглядеть мои таблицы:

\documentclass[%
    fontsize=11pt, 
    twoside=off 
]{scrbook}

\usepackage{tabularx} 
\usepackage[tablewithout, figurewithout]{caption} 

\renewcommand{\arraystretch}{1.8} 
\newcolumntype{M}{X<{\vspace{4pt}}} 

\begin{document}

\vspace{\parskip}
\section*{Überschrift Tabelle 1}

\begin{table}[!h]
\fontsize{9pt}{13pt}\selectfont
\begin{tabularx}{\textwidth}{ M | M }
\multicolumn{1}{X}{\textbf{Spalte 1}}%
& \multicolumn{1}{X}{\textbf{Spalte 2}} \\
\hline
Nummer 1,\newline\,mehrzeilig in Schriftgröße 9 pt & Nummer 2 \\
\hline
Nummer 1 & Nummer 2 \\
\hline
Nummer 1 & Nummer 2 \\
\hline
\end{tabularx}

\caption{}
\end{table}



\vspace{\parskip}
\section*{Überschrift Tabelle 2}

\begin{table}[!h]
\fontsize{9pt}{13pt}\selectfont
\begin{tabularx}{\textwidth}{| M | M |}
\hline
\textbf{Spalte 1} & \textbf{Spalte 2} \\
\hline
Nummer 1 & Nummer 2 \\
\hline
Nummer 1 & Nummer 2 \\
\hline
Nummer 1 & Nummer 2 \\
\hline
\end{tabularx}
\caption{}
\end{table}


\vspace{\parskip}
\section*{Überschrift Tabelle 3}

\begin{table}[!h]
\fontsize{9pt}{13pt}\selectfont
\begin{tabularx}{\textwidth}{@{} M  M @{}}
\textbf{Spalte 1} & \textbf{Spalte 2} \\
Nummer 1 & Nummer 2 \\
Nummer 1 & Nummer 2 \\
Nummer 1 & Nummer 2 \\
\end{tabularx}
\caption{}
\end{table}
\end{document}

введите описание изображения здесь (извините, что они на немецком)

Теперь у меня есть таблица, которая лучше отображается в альбомном формате. Я заставил ее работать с sidewaystable, но здесь таблица занимает только одну страницу.

Мои попытки изложить все на нескольких страницах всегда заранее терпят неудачу.

вот моя текущая попытка (с настраиваемой шириной столбцов):

\documentclass[%
    fontsize=11pt, 
    twoside=off 
]{scrbook} 

\usepackage{longtable}
\usepackage{rotating}
\usepackage{pdflscape}

\usepackage{tabularx} % Flexiblere Tabellen
\usepackage[tablewithout, figurewithout]{caption}

\renewcommand{\arraystretch}{1.8} 
\newcolumntype{M}[1]{X<{\vspace{4pt}\hsize=#1\hsize}}

\begin{document}
\begin{table}[!h]
\fontsize{9pt}{13pt}\selectfont
\begin{longtable}{\textwidth}{| M{0.5} | M{1} | M{1} | M{0.5} | M{0.5} | M{0.5} | M{1} |  M{1} | M{1} | M{3} |}

\hline
\textbf{id}  & \textbf{Label}                        & \textbf{Grund}                      & \textbf{Offen}   & \textbf{Durchfluss} & \textbf{Durchlass} & \textbf{Rückstau} & \textbf{HQ-Marken\footnote{Beachte: \gls{hq}}} & \textbf{Parkplatz}  &  \textbf{Notizen} \\
\hline
1 & & xy & xy & 0 & 0 & Ja & 0 & &  xxxxyyyyyy\\
\hline
*unbelivebale amount of data*
507 & xy  &  & xy & 0 & 0 & xy & 0  & xy & xxxxyyyyyy\\                  
\hline
\end{longtable}
\caption{xy \cite{xy}}
\label{xy}
\end{table}
\end{landscape}
\end{document}

Теперь я получаю все больше и больше сообщений об ошибках. Начиная с того, что \texdwidth — недопустимый Illegal pream-токен, что \hline находится за пределами таблицы. И я цитирую:

Вкладка «Дополнительное выравнивание» изменена на \cr.

Вы написали слишком много выравнивающих вкладок в таблице, из-за чего одна из них превратилась в разрыв строки. Убедитесь, что вы указали правильное количество столбцов в таблице.

хотя я почти уверен, что это неправильно или имеет другую причину, поскольку эта ошибка не возникает с обычным боковым столом.

Извините за длинный текст. Любая помощь будет оценена по достоинству!

решение1

Жду комментария:

  • Извините, честно говоря, ваш код - бардак. Из него невозможно понять, что вы хотели бы иметь в таблице
  • Любая длинная таблица ( longtable, xltabuilar, longtblrиз tabularrayи т.д.) = не должна была быть инкапсулирована для плавания table.
  • Тип столбца Xдоступен только в tabularx, xltabular, longtblr, etc. tables and not inlongtable`.
  • Согласно спецификации столбцов, ваша таблица довольно широкая. Поэтому ее размещение на landscapeстранице является хрупким
  • Из вашего MWE не очевидно, что такое содержимое столбцов. Возможно, было бы лучше, чтобы некоторые столбцы имели естественную ширину (в MWE ниже ˙ Qcolumns вместо X.

Пример возможной таблицы, которая может послужить отправной точкой:

\documentclass[11pt]{scrbook}
\usepackage[margin=25mm]{geometry}% define page layout

\usepackage{pdflscape}
\usepackage{rotating}
\usepackage{tabularray}


\begin{document}
    \begin{landscape}
    \footnotesize
\begin{longtblr}[
caption = {xy},
  label = {xy},
note{a} = {Beachte: {hq}},  
                ]{hlines, vlines,
                  colspec = {X[0.5,l, font=\bfseries] 
                             *{8}{X[l]} 
                                  X[3,l]},
                  row{1}  = {font = \bfseries, m},
                  rowhead = 1}
% column deaders
i.d &   Label       &   Grund       &   Offen   &   Durchfluss  
    &   Durchlass   &   Rückstau    &   {HQ-\\Marken}\TblrNote{a}
                                                &   Parkplatz  
    &   Notizen     \\
1   & 2             & 3             & 4         & 5 
    & 6             & 7             & 8         & 9
    &  10: xxxxyyyyyy   \\
%*unbelivebale amount of data*
507 & xy            &               & xy        & 0 
    & 0             & xy            & 0         & xy 
    & xxxxyyyyyy        \\
\end{longtblr}
    \end{landscape}
\end{document}

введите описание изображения здесь

Пожалуйста, отредактируйте свой вопрос, устраните все вышеупомянутые недостатки и предоставьте больше (фиктивных) данных в вашей таблице, которые имитируют реальные данные. Также уточните, в чем ваша проблема, или где вы застряли при написании вашей таблицы. После этого можно будет лучше вам помочь.

Связанный контент