LaTeX 将表格置于页边距之外

LaTeX 将表格置于页边距之外

我使用的是 KOMA 类 scrbook,字体为 Tex Gyre Pagella (11pt),间距为一半。我放置了一个带有位置选项“htb”的表格浮动,但 pdflatex 和 lualatex 都将表格放在了文本主体之外。表格位于页面底部,但深入到底部边距。

我在 archlinux x64 上使用 TeXLive 2014。lualatex --version打印Version beta-0.79.1 (TeX Live 2014/Arch Linux) (rev 4971)

MWE(包括 Tex Gyre Pagella 和一半间距)。我曾经showframe将边缘形象化:

\documentclass[paper=a4,
                twoside=true,
                parskip=half,
                fontsize=11pt,
                BCOR=3mm]{scrbook}

\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
% both font and onehalfspacing are imperative for this example
\usepackage{tgpagella}
\usepackage{setspace}
\onehalfspacing{}
\usepackage{booktabs}

\usepackage{multirow}
\usepackage{blindtext}
\usepackage{showframe}

\begin{document}
Dies hier ist ein Blindtext zum Testen von Textausgaben. Dies hier ist ein Blindtext zum Testen von Textausgaben.
Dies hier ist ein Blindtext zum Testen von Textausgaben. Dies hier ist ein Blindtext zum Testen von Textausgaben.

Dies hier ist ein Blindtext zum Testen von Textausgaben. Dies hier ist ein Blindtext zum Testen von Textausgaben.
Dies hier ist ein Blindtext zum Testen von Textausgaben. Dies hier ist ein Blindtext zum Testen von Textausgaben.
Dies hier ist ein Blindtext zum Testen von Textausgaben. Dies hier ist ein Blindtext zum Testen von Textausgaben.
Dies hier ist ein Blindtext zum Testen von Textausgaben. Dies hier ist ein Blindtext zum Testen von Textausgaben.
Dies hier ist ein Blindtext zum Testen von Textausgaben. Dies hier ist ein Blindtext zum Testen von Textausgaben.
Dies hier ist ein Blindtext zum Testen von Textausgaben. Dies hier ist ein Blindtext zum Testen von Textausgaben.
Dies hier ist ein Blindtext zum Testen von Textausgaben. Dies hier ist ein Blindtext zum Testen von Textausgaben.
Dies hier ist ein Blindtext zum Testen von Textausgaben. Dies hier ist ein Blindtext zum Testen von Textausgaben.
Dies hier ist ein Blindtext zum Testen von Textausgaben. Dies hier ist ein Blindtext zum Testen von Textausgaben.


\begin{table}[htb]
\caption{Table caption}
\label{tab:label1}
\vspace{2mm}
{\small
\begin{quote} 
Dies hier ist ein Blindtext zum Testen von Textausgaben. Dies hier ist ein Blindtext zum Testen von Textausgaben.
Dies hier ist ein Blindtext zum Testen von Textausgaben. Dies hier ist ein Blindtext zum Testen von Textausgaben.
Dies hier ist ein Blindtext zum Testen von Textausgaben.
\end{quote}
}
\begin{center}
    \begin{tabular}{cccc}
        \toprule 
        \multirow{2}{*}{
            Parameter~$b$
        } & \multicolumn{3}{c}{Parameter $h$} \\
        \cmidrule{2-4}
         & 4 & 2 & 1\\ \midrule     
        360 & 0.0123 & 0.0123 & 0.0123\\[-2mm]
         ~ & {\scriptsize $\times 20$} & {\scriptsize $\times 20$}& {\scriptsize $\times 20$}\\[1mm]
        360 & 0.0123 & 0.0123 & 0.0123\\[-2mm]
         ~ & {\scriptsize $\times 20$} & {\scriptsize $\times 20$}& {\scriptsize $\times 20$}\\[1mm]
        360 & 0.0123 & 0.0123 & 0.0123\\[-2mm]
         ~ & {\scriptsize $\times 20$} & {\scriptsize $\times 20$}& {\scriptsize $\times 20$}\\[1mm]
        360 & 0.0123 & 0.0123 & 0.0123\\[-2mm]
         ~ & {\scriptsize $\times 20$} & {\scriptsize $\times 20$}& {\scriptsize $\times 20$}\\
        \bottomrule
    \end{tabular}
\end{center}
\end{table}

\subsection{next subsection}
\blindtext{}

\end{document}

表格定位在页边距内

谁能帮我?

PS:尝试不同的放置选项(如“bt”或“tb”)有助于解决此 MWE,但这并不能改变使用“htb”的行为不符合预期的事实。我无法更改每个浮点数。

PPS:根据文本大小,我还让乳胶将浮动内容放置在文本上方: 表格位于文本上方

答案1

使用\centering而不是\begin{center}...\end{center}解决了问题(Windows 上将 Miktex 与 Lualatex 一起使用)[2]。

\begin{center}...\end{center}在浮动环境中引入额外的垂直空间时,我怀疑这可能会影响 LaTeX 的边距计算。

\begin{center}...\end{center}一般来说,在浮动环境中不鼓励使用,而应该使用\centering[1]。

更新:

setspace正如用户 egreg 所建议的,将包和环境组合成浮动包尤其危险。尽管在移除包时center使用环境定位表格是可行的,但我建议坚持这样做,以避免将来出现麻烦。centersetspace\centering


使用示例\centering

\begin{table}[htb]
    \caption{Table caption}
    \label{tab:label1}
    \centering
    Descriptive text
    \begin{tabular}{cccc}
        ...
    \end{tabular}
\end{table}

[1] 《LATEX 2ε 使用基本指南 - 过时的命令和包》第 3.1 节 (http://mirrors.ctan.org/info/l2tabu/english/l2tabuen.pdf

[2]

固定台定位

相关内容