我想在我的论文中添加一张图片但是遇到了一个问题。
当我仅使用标签添加图像时\includegraphics[]{}
,一切都正常,并且当我编译文档时图片就会显示出来。
当我使用\begin{figure} \includegraphics[]{} \end{figure}
-语法时,图像不会出现在编译的文档中。
我的标题包含的相关部分是:
\usepackage{graphicx}
\graphicspath{ {pics/} }
稍后我用这个块添加图像:
%This does not work
\begin{figure}
\centering
\includegraphics[width=.4\textwidth]{generalPolya}
\label{generalPolya}
\end{figure}
%This works
\includegraphics[width=.4\textwidth]{generalPolya}
我猜是图形包出了问题,但我从之前的一篇论文中复制了设置,所以应该可以正常工作。有什么想法吗?提前谢谢。
编辑:
感谢大家的回复。我创建了一个最小的工作示例。显然,多列会干扰图形标签:
\documentclass[]{article}
\usepackage{multicol} % Used for the two-column layout of the document
\usepackage{amsmath}
\usepackage{graphicx}
\graphicspath{ {pics/} }
\title{\vspace{-15mm}\fontsize{24pt}{10pt}\selectfont\textbf{Lorem ipsum}} % Article title
\begin{document}
\maketitle % Insert title
\begin{multicols}{2} %
%This does not show up
\begin{figure}[h]
\includegraphics[width=.4\textwidth]{generalPolya}
\end{figure}
%This shows up.
\begin{center}
\includegraphics[width=.5\textwidth]{chair}
\end{center}
\end{multicols}
\end{document}
编译文档后显示的内容如下
这个语法有什么问题?
答案1
尝试使用如下小页面:
\documentclass[12pt,a4paper]{article}
\usepackage{caption}
\usepackage{graphicx}
\begin{document}
\makebox[0pt][l]{%
\begin{minipage}{\textwidth}
\centering
\includegraphics[width=.4\textwidth]{example-image.pdf}
\captionof{figure}{figure caption}
\label{fig:fig1}
\end{minipage}
}
\medskip
I used Figure \ref{fig:fig1} above and referred to it.
\end{document}
答案2
这就是为什么我喜欢在命令行上进行编译而不是使用 TeXMaker 等的原因:
文件中有一个明确的警告.log
(以及经常发生的错误:)multicols
环境中没有浮点数:
Package multicol Warning: Floats and marginpars not allowed inside `multicols' environment!.
这是有记录的行为,multicol
手册描述了这个警告并清楚地说明了会发生什么(重点是我的):
Floats and marginpars not allowed inside ‘multicols’ environment!
如果您尝试使用该命令或未加星号的版本,则会出现此
\marginpar
消息figure
table
环境,则会出现此消息。这样的漂浮物将会消失!
如果要在环境中使用带标题的图形(或表格)multicols
,则使用\captionof{figure}{Caption text}
而不是\caption
并figure
完全省略环境(或table
环境)。从这个意义上说,我的答案基本与 AboAmmar 的解决方案相同,但没有框和小页面。
\documentclass[]{article}
\usepackage{multicol} % Used for the two-column layout of the document
\usepackage{amsmath}
\usepackage{caption}
\usepackage[demo]{graphicx}
\graphicspath{ {pics/} }
% I disable this since it's not relevant
%\title{\vspace{-15mm}\fontsize{24pt}{10pt}\selectfont\textbf{Lorem ipsum}} % Article title
\begin{document}
% \maketitle % Insert title
\begin{multicols}{2} %
%This does not show up
%\begin{figure}[h] % Drop this
\includegraphics[width=.4\textwidth]{generalPolya}
\captionof{figure}{My figure which should be inside the multicols}
%\end{figure} % Drop this
%This shows up.
\begin{center}
\includegraphics[width=.5\textwidth]{chair}
\end{center}
\end{multicols}
\end{document}
答案3
我遇到了类似的问题,使用时图形没有显示multicol
我根据这个答案的帮助解决了这个问题:https://tex.stackexchange.com/a/483689/152952
\usepackage{float}
[...]
\begin{figure}[H]
[...]
\end{figure}
答案4
我在尝试在 LaTeX Workshop (Vscode) 中的 PDF 预览中显示一个图时遇到了类似的问题。无论我选择哪种比例,我都无法显示它。没有出现任何错误消息,我在日志中也看不到任何相应的警告。但是,一旦我关闭预览并重新打开它,图就会突然显示出来。我认为它一直在编译,但不知何故 PDF 预览无法显示它。简单地重新打开它就解决了这个问题。也许这对某些人也有帮助。