我在 Overleaf 上使用以下软件包:
\usepackage[utf8]{inputenc}
\usepackage{graphicx}
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{amssymb}
当我尝试添加标题时,出现编译错误(标题超出浮点数)。以下是我所做的:
\begin{center}
\label {tab1}
\includegraphics[scale=0.3]{fig.PNG} \caption{cap_text}
\end{center}
我怎样才能修复这个问题?
顺便说一下,我需要两个文本,一个在上方,一个在下方。我应该\caption{text}
在它之前和之后添加吗?
答案1
center
不是浮动环境,因此出现错误。您需要环境figure
,即
\begin{figure}
\centering
\includegraphics{..}
\caption{..}
\label{..}
\end{figure}
我假设只有一个文本需要成为编号标题的一部分,对于另一个文本只需在适当的位置添加一些文本,例如
\begin{figure}
Lorem ipsum dolor sit amet, etc., etc.
\centering
\includegraphics{..}
\caption{..}
\label{..}
\end{figure}
如果您不需要图像浮动,您可以继续使用center
而不是figure
,但要添加\usepackage{caption}
到前言中,并使用\captionof{figure}{caption text \label{...}}
而不是\caption
。请注意,\label
必须放在 之后或 之内\caption
,否则交叉引用将不起作用,例如参见为什么环境的标签必须出现在标题之后?
\documentclass{article}
\usepackage{caption}
\begin{document}
\begin{center}
\includegraphics{..}
\captionof{figure}{...\label{..}}
\end{center}
\end{document}
由于环境内允许分页符center
,因此您最终可能会将图像和标题放在不同的页面上,这可能是您不希望看到的。另一种方法是使用minipage
而不是center
,例如
\documentclass{article}
\usepackage{caption}
\begin{document}
\noindent\begin{minipage}{\textwidth}
\centering
\includegraphics{..}
\captionof{figure}{...\label{..}}
\end{minipage}
\end{document}
这\noindent
是为了删除标准段落缩进。