图像显示在可视化编辑器上,但不显示在编译后的 PDF 上

图像显示在可视化编辑器上,但不显示在编译后的 PDF 上
\section{Question 1}
\begin{figure}
    \centering
    \includegraphics[width=\linewidth]{Cute Goat In Pink.jpg}
    \caption{Daredevil}
    \label{fig:my_label}
\end{figure}

以上是我尝试使用的代码,但由于某种原因,它没有显示在编译后的 pdf 上。

因此,我使用的是 overleaf 的在线版本,所以我认为问题不在我的版本上。此外,下面是我目前使用的完整代码:

\documentclass{article}
\usepackage{graphicx} % Required for inserting images

\title{CPSC}
\author{}
\date{July 2023}

\begin{document}

\maketitle

\section{Question 1}
Hello
\begin{figure}
    \centering
    \includegraphics[width=\linewidth]{Cute Goat In Pink.jpg}
    \caption{Daredevil}
    \label{fig:my_label}
\end{figure}
Goodbye
\end{document}

不幸的是,显示的内容只有 hello 和 goodbye。至于图片名称,这就是保存的方式。我尝试将其替换为另一个全是小写字母且没有空格的名称,但仍然遇到相同的问题。pdf 中的日志文件完全没有显示任何错误,这让我更加困惑。我直接从 Overleaf 复制了此代码,因此从理论上讲,它应该可以工作。

答案1

figure是浮动环境。这意味着,如果图像 + 标题不适合当前页面(取决于浮动参数)可以移至下一页。这里似乎也是这种情况。

article请注意, if tbp(top, bottom, page)的默认位置。因此figure,页面中的某个位置不会打印,它已放置在源中,而只会打印在此页或下一页的顶部或底部,或单独打印在页面上。

此外,您已将浮动元素放在段落内。请注意,即使您更改浮动元素的参数,\begin{figure}[!htbp]它也不会在“Hello”和“Goodbye”之间打印,而是首先在“Goodbye”之后打印,因为 LaTeX 不会在当前行结束之前打印它。

因此,为了在“Hello”和“Goodbye”之间替换图像,我不仅需要更改浮动选项,还需要在“Goodbye”之前添加一个段落(空行):

\documentclass{article}
\usepackage{graphicx} % Required for inserting images

\title{CPSC}
\author{}
\date{July 2023}

\begin{document}

\maketitle

\section{Question 1}
Hello
\begin{figure}[!htbp]
    \centering
    \includegraphics[width=\linewidth]{example-image}
    \caption{Daredevil}
    \label{fig:my_label}
\end{figure}

Goodbye
\end{document}

在此处输入图片描述

如果您的图像高于替换图像,您可能还需要通过更改选项example-image来减小尺寸。\includegraphicswidth=\linewidth

但如果你不想让图像浮动,另一种解决方案可能是不要使用浮动figure

相关内容