给图片添加标题的问题

给图片添加标题的问题

我在 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是为了删除标准段落缩进。

相关内容