Вертикальное выравнивание нескольких последовательных таблиц

Вертикальное выравнивание нескольких последовательных таблиц

Цель состоит в том, чтобы выровнять несколько (часто довольно больших) последовательных озаглавленных таблиц в соответствующих главах, например: глава 1, таблица 1.1, таблица 1.2, таблица 1.3 --- глава 2, таблица 2.1, таблица 2.2...

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

Вот две картинки из следующего MWE. На первой изображена глава, какой-то случайный текст и нормальное расстояние, которого я хотел достичь после каждой новой главы в документе, обозначенное как «целевое расстояние».

целевое расстояние

На втором рисунке видно, что расстояние между главами и таблицами больше обычного:

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

Вот MWE:

    \documentclass[a4paper, 12pt, headsepline, smallheadings,]{scrreprt}
\usepackage{booktabs}
\usepackage[labelfont={small,bf}, textfont=small, labelsep=colon,singlelinecheck=false,format=plain, parindent=1em]{caption}
\usepackage[a4paper]{geometry}
\renewcommand*{\chapterheadstartvskip}{\vspace{-1.8\baselineskip}}
\raggedbottom

\begin{document}
\chapter{B}
Some text to show the target distance from a chapter headline

\chapter{A}
\begin{table}[h]
\caption{Description}
\begin{tabular}{lccccc}
\toprule
ABCDE & ABCDE & ABCDE & ABCDE & ABCDE & ABCDE  \\
ABCDE &
ABCDE & ABCDE & ABCDE & ABCDE & ABCDE  \\
ABCDE & 
ABCDE & ABCDE & ABCDE & ABCDE & ABCDE \\
ABCDE & ABCDE & ABCDE & ABCDE & ABCDE & ABCDE  \\
ABCDE &
ABCDE & ABCDE & ABCDE & ABCDE & ABCDE  \\
ABCDE & 
ABCDE & ABCDE & ABCDE & ABCDE & ABCDE \\
ABCDE & ABCDE & ABCDE & ABCDE & ABCDE & ABCDE  \\
ABCDE &
ABCDE & ABCDE & ABCDE & ABCDE & ABCDE  \\
ABCDE & 
ABCDE & ABCDE & ABCDE & ABCDE & ABCDE \\
ABCDE & ABCDE & ABCDE & ABCDE & ABCDE & ABCDE  \\
ABCDE &
ABCDE & ABCDE & ABCDE & ABCDE & ABCDE  \\
ABCDE & 
ABCDE & ABCDE & ABCDE & ABCDE & ABCDE \\
\bottomrule
\end{tabular} 
\end{table}
\begin{table}[h]
\caption{Description}
\begin{tabular}{lccccc}
\toprule
ABCDE & ABCDE & ABCDE & ABCDE & ABCDE & ABCDE  \\
ABCDE &
ABCDE & ABCDE & ABCDE & ABCDE & ABCDE  \\
ABCDE & 
ABCDE & ABCDE & ABCDE & ABCDE & ABCDE \\
ABCDE & ABCDE & ABCDE & ABCDE & ABCDE & ABCDE  \\
ABCDE &
ABCDE & ABCDE & ABCDE & ABCDE & ABCDE  \\
ABCDE & 
ABCDE & ABCDE & ABCDE & ABCDE & ABCDE \\
ABCDE & ABCDE & ABCDE & ABCDE & ABCDE & ABCDE  \\
ABCDE &
ABCDE & ABCDE & ABCDE & ABCDE & ABCDE  \\
ABCDE & 
ABCDE & ABCDE & ABCDE & ABCDE & ABCDE \\
ABCDE & ABCDE & ABCDE & ABCDE & ABCDE & ABCDE  \\
\bottomrule
\end{tabular}
\end{table} 

\begin{table}[h]
\caption{Description}
{\scriptsize
\begin{tabular}{lccccc}
\toprule
ABCDE & ABCDE & ABCDE & ABCDE & ABCDE & ABCDE \\
ABCDE & ABCDE & ABCDE & ABCDE & ABCDE & ABCDE \\
ABCDE & ABCDE & ABCDE & ABCDE & ABCDE & ABCDE \\
ABCDE & ABCDE & ABCDE & ABCDE & ABCDE & ABCDE \\
ABCDE & ABCDE & ABCDE & ABCDE & ABCDE & ABCDE \\
ABCDE & ABCDE & ABCDE & ABCDE & ABCDE & ABCDE \\
ABCDE & ABCDE & ABCDE & ABCDE & ABCDE & ABCDE \\
ABCDE & ABCDE & ABCDE & ABCDE & ABCDE & ABCDE \\
ABCDE & ABCDE & ABCDE & ABCDE & ABCDE & ABCDE \\
ABCDE & ABCDE & ABCDE & ABCDE & ABCDE & ABCDE \\
ABCDE & ABCDE & ABCDE & ABCDE & ABCDE & ABCDE \\
ABCDE & ABCDE & ABCDE & ABCDE & ABCDE & ABCDE \\
ABCDE & ABCDE & ABCDE & ABCDE & ABCDE & ABCDE \\
\bottomrule
\end{tabular}
}
\end{table}

\end{document}

С наилучшими пожеланиями, Том.

решение1

@karlkoeller решил часть проблемы в другой теме, используя команду \setlength{\abovecaptionskip}{-x pt}. Это решает проблему расстояния для страниц, содержащих заголовок.

В случае страниц, не содержащих заголовок, изначально плавающие таблицы (например, страница 3 MWE) можно предотвратить от плавания, загрузив -пакет floatи установив плавающий параметр на [H]. После этого целевое расстояние можно установить vspaceметодом проб и ошибок.

Это решение, которое я сейчас использую. Если у кого-то есть лучшее, не стесняйтесь его опубликовать.

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