在LaTeX中定位表标题

5

当我尝试把表格居中并添加标题,使它显示为“Table 1. This is the caption.”时,无论我怎么做,表格都会出现在页面顶部。如果我不加标题,则可以将其放在文档的任何部分。我该如何解决这个问题?

\begin{table}
    \caption{This is the caption.}
    \begin{center}
        \begin{tabular}{ | l | l | l | l |}
        \hline

        ...

        \hline
        \end{tabular}
    \end{center}
\end{table}

我认为这不是表格标题的问题,而是浮动位置的问题。 - Alessandro Cuttin
3个回答

3

尝试

\begin{table}[h]
   ...
\end{table}

这告诉latex“将表格放在这里”,而不是让它漂浮。

我还使用

\usepackage{array}

在我所有的LaTeX文档中,都会有一个导言部分,但pr0wl告诉我们这并非必要。感谢pr0wl!

不需要使用 \usepackage{array}。 - Acron
1
LaTeX有放置图表的算法,旨在产生高质量的布局 - 有时它们与您想要的不一致。如果“h”不能将表格放置在您想要的位置(“大约在这里”),则可以更坚决地使用“h!”。 另请参见http://en.wikibooks.org/wiki/LaTeX/Floats,_Figures_and_Captions和http://www.math.uiuc.edu/~hildebr/tex/basics.html。 - M. S. B.

2
你也可以尝试使用\usepackage{float},它提供了额外的定位命令H,这真正强制LaTeX将图片放置在指定位置。如果你使用float,请确保在标题后声明标签。
就让你的图片出现在“这里”,H>h!>h。但是H!没有任何作用。

1

浮点数的管理通常不容易理解(请参见这里)。table环境自动将表格设为浮动元素。也就是说,该元素能够在页面上移动,以实现良好的页面布局(从印刷排版的角度来看,良好的布局可能与您喜欢的布局不同)。

LaTeX会为您管理浮动元素,并且提供非常强大的手段来控制交叉引用。

如果您不希望某个元素浮动,请不要将其作为浮动元素。另外,如果您需要标题,请使用caption包(再次参见这里)。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接