includegraphics 选择 pdf 而不是 eps

includegraphics 选择 pdf 而不是 eps

我之前在 stackoverflow.com 上发过这篇文章,有人建议我在这里发。因此,提前为交叉发布道歉。

我在 ubuntu 10.04 中使用 LaTeX 构建使用 的 TeX 文件\includegraphics。我没有指定文件扩展名以允许 latex 自动决定。我包含的每个图像都有.pdf和文件。.eps

我的问题是,如果我使用 构建,pdflatex一切都会正常。但是,如果我使用 构建,latex则会收到以下形式的错误:

 ! LaTeX Error: Cannot determine size of graphic in images/DetailedArch.pdf
 (no BoundingBox).

我以为运行latex会自动选择文件的 EPS 版本。如果我.eps\includegraphics命令中指定扩展名,一切都会正常进行。我尝试了各种选项,例如使用,\ifpdf但未能找到解决方案。

我注意到的一点是,在 Ubuntu 10.04 中latex有一个链接pdftex——不确定这是否是问题的一部分。

答案1

最好的方法是声明要使用的图形扩展\DeclareGraphicsExtensions,并且在包含图像时不提供扩展名:

\usepackage{graphicx}
\usepackage{ifpdf}
\ifpdf
  \DeclareGraphicsExtensions{.pdf,.png,.jpg}
\else
  \DeclareGraphicsExtensions{.eps}
\fi

% In the document:
\includegraphics{image_name}%  no extension!

我个人放弃了这种双重编译的东西,只用了好pdflatex几年。如果你需要 PS 相关的东西,有一些软件包可以帮到你。

答案2

扩展及其顺序在图形包的驱动程序文件中声明。例如,标准 dvips 驱动程序包含

\def\Gin@extensions{.eps,.ps,.eps.gz,.ps.gz,.eps.Z}

这意味着如果使用该驱动程序,.pdf图形将不会被使用。

您的文档使用哪种驱动程序取决于您的文档和系统。制作一个最小示例来演示您的问题,并将其与 latex 运行的日志文件一起展示给我们。

相关内容