我正在撰写我的硕士论文,文中有很多简短的表格、清单等。
我会用这样的数字来描述它们:
\begin{figure}[h!]
\begin{lstlisting}[mathescape]
... my listing here ...
\end{lstlisting}
\caption{... caption ...}
\label{... label ...}
\end{figure}
\begin{figure}[h!]
\begin{tabular}{|l|l|}
... my table here ...
\end{tabular}
\caption{... caption ...}
\label{... label ...}
\end{figure}
等等,但事实上 LaTeX 将它们移动到另一个页面(即使它们有时很短)使文本难以阅读。
我需要 LaTeX 将它们保持在完全相同的位置(如果它们适合那里)或下一页的顶部(否则)。据我所知,在这种情况下我不应该使用数字。但另一方面,我想保留标题、标签和编号,以便他们仍然能够找到它们。
我怎么做?
答案1
我需要 LaTeX 将它们保存在完全相同的位置(如果它们适合那里)或下一页的顶部(否则)。
假设您有许多float
物体,它们通常很小,并且它们需要尽可能靠近相应的标注,您可能需要加载包float
并将[H]
位置说明符(而不是[h!]
)附加到每个figure
或table
您所描述的要求适用的环境。
答案2
包的一部分caption
是宏
\captionof{environment}[short]{long caption}
例如,您可以忽略环境table
并使用一个表
\captionof{table}{long caption title}
优点:没有浮动,但你必须控制表格是否有足够的空间。图形也一样。
您的table
片段:
\begin{tabular}{|l|l|}
... my table here ...
\end{tabular}
\captionof{table}{... caption ...}
\label{tab:label}