如果有多个具有不同扩展名的文件,includegraphics 会选择哪个文件?

如果有多个具有不同扩展名的文件,includegraphics 会选择哪个文件?

我们通常会写类似

\includegraphics{image}

代替:

\includegraphics{image.png}  

也就是说,\includegraphics通常不需要诸如.png .pdf .jpg等文件扩展名... 也就是说,

假设我在同一目录中有以下所有文件。将\includegraphics嵌入哪个文件?

my_pic.jpg
my_pic.psd
my_pic.png
my_pic.pdf
my_pic.jpeg
my_pic.gif

文档:

\documentclass{minimal}
\begin{document}
\begin{figure}[htpb]
  \centering
  \includegraphics[width=\linewidth]{my_pic}
   \caption{Sunshine and Rainbows}
  \Description{summertime}
\end{figure}
\end{document}

答案1

这取决于引擎。使用 pdftex,当前列表(您可以在 pdftex.def 中找到)是:

\def\Gin@extensions{%
  .pdf,.png,.jpg,.mps,.jpeg,.jbig2,.jb2,%
  .PDF,.PNG,.JPG,.JPEG,.JBIG2,.JB2%
}

这意味着例如 pdf 将被优先考虑,然后是 png 等等。

答案2

正如图形指南(第 4.5 节)所述,这是用户可设置的。

如果你有

\DeclareGraphicsExtensions{.pdf,.png}

在您的文档中,它只会按照该顺序尝试.pdf.png而忽略其余部分。

Ulrike 的答案中所示的默认值是在驱动程序文件中为您正在使用的选项设置的。 (使用较低级别的\def语法,而不是因为驱动程序文件可能在 定义之前\DeclareGraphicsExtensions由包加载。)color\DeclareGraphicsExtensions

相关内容