无法删除表格前的空格

无法删除表格前的空格

我无法消除表格前的空白。它们现在的样子如下:

表格

我尝试过使用!htp\vspace,但是不起作用。有什么建议吗?

答案1

该解决方案基于以下假设:

  • 您正在使用twocolumn布局;

  • 表格太宽,无法容纳在内\columnwidth,因此您使用table*- 这必然会将它们推到下一页(的顶部)(如果该页面上有其他内容)。

不要依赖 TeX 的浮动机制来放置,而是使用以下方法手动设置浮动afterpagecaption

afterpage有助于提供文档内内容的正确流动,延迟代码直到当前页面被刷新。这可能不是必需的,具体取决于文档结构。例如,如果两个表格后面没有内容(即,它们是文档中最后设置的内容),则一个简单的\clearpage would also work rather than wrapping the "float" inside an\afterpage` 命令。

caption提供设置适当类型标题的方法,即使您可能不在浮动内。由于我们要手动设置表格,因此我们实际上是在内部进行设置,minipage并使用\captionof{table}设置 a table-like \caption

在此处输入图片描述

\documentclass[twocolumn]{article}

\usepackage{lipsum}
\usepackage{afterpage,caption}

\begin{document}

\lipsum[1-4]

\afterpage{%
\noindent
\makebox[\columnwidth][l]{%
  \begin{minipage}{\textwidth}
    \centering

    \rule{.7\textwidth}{250pt}% A tabular
    \captionof{table}{This is a caption.}

    \bigskip

    \rule{.8\textwidth}{100pt}% A tabular
    \captionof{table}{This is a caption.}
  \end{minipage}
}}%

\lipsum[5-7]

\end{document}

无需将表格放在单独的浮动框中。事实上,我已将它们放在上面的同一组 (a minipage) 中。此外,还小心地将两列宽度的块\hbox放在\columnwidth-size 框中,以确保它不会引起过满警告。

请注意,\afterpage{...}代码应放置在“浮动”位置之前的页面的第二列文本内,因为下面的每一列twocolumn类似于onecolumn模式内的页面。

相关内容