![PdfLatex 调用不适用于图形包和 eps 图形](https://linux22.com/image/334874/PdfLatex%20%E8%B0%83%E7%94%A8%E4%B8%8D%E9%80%82%E7%94%A8%E4%BA%8E%E5%9B%BE%E5%BD%A2%E5%8C%85%E5%92%8C%20eps%20%E5%9B%BE%E5%BD%A2.png)
我注意到,pdflatex
当对部件中的图形使用附加选项时,无法编译以下带有 eps 图形的最小工作示例\includegraphics
。如果没有附加选项,一切都会正常工作。我尝试使用latex
命令编译源代码,一切正常。我阅读了有关这些引擎的信息,并得出结论,它们本质上是用不同选项调用的相同程序。我真的很想知道为什么 pdf 输出有问题,而 dvi 输出没有问题。据我所知,这两个引擎应该使用相同的格式,即 LaTeX。
我还注意到我不必使用epstopdf
包。为什么会这样?
\documentclass{article}
\usepackage[pdftex]{graphics}
\usepackage{float}
%\usepackage{epstopdf}
\begin{document}
\begin{figure}[H]
% \includegraphics[width=3.25in,height=3.25in]{trial.eps}
\includegraphics[15,10][34,45]{trial.eps}
\end{figure}
\end{document}
答案1
允许包含图像的文件类型集取决于所使用的驱动程序或后端。
“传统上” pdflatex 不允许 EPS,而 latex/dvips 不允许 pdf,因此您会收到有关未知图形类型的错误。
然而现在 pdflatex 在后台调用 eps2pdf 将 EPS 文件转换为 pdf,以便可以将其包含在内。
但是我得到了
! Undefined control sequence.
<argument> ...onverted-to.pdf image\GPT@AttrShort
这意味着可能没有人曾经尝试过使用与包版本graphics
相反的版本。graphicx
graphics
这可能是一个错误,我会看看我能做什么,但实际上使用而不是没有任何优势graphicx
,如果你使用该graphicx
版本,它都可以正常工作。
答案2
图形包含取决于引擎。LaTeX 是格式,并且 和latex
也是相同的pdflatex
。但引擎不同:一个使用 TeX,另一个使用 pdfTeX。(或者,一个在 DVI 模式下使用 pdfTeX,另一个在 PDF 模式下使用 pdfTeX。)
生成 DVI 时,只能包含 EPS 格式的图像。后处理器可以理解这些图像,后处理器通常显示 DVI 或从 DVI 生成 PS 或 PDF。(DVI 本身基本上是一堆小盒子和不太小的盒子,其中包含一些有关在显示文件时应将哪些内容放入盒子中的信息。)
直接生成 PDF 时,PDF 图像是原生的,不能直接包含 EPS 图像。必须先将它们转换为 PDF。这可以在编译之前完成,也可以在编译期间即时完成。使用时默认启用合适的转换规则graphicx.sty
。
除非软件包无法自动确定驱动器,否则建议不要在加载时指定驱动程序作为选项graphicx
。它对 pdfTeX 没有问题,所以
\usepackage{graphicx}
是建议的负载线。
最后,最好不要指定文件扩展名,除非您特别需要排除使用特定的文件格式。
所以,
\documentclass{article}
\usepackage{graphicx}
\usepackage{float}
\begin{document}
\begin{figure}[H]
\includegraphics[bb= 15 10 34 45]{tiger}
\end{figure}
\end{document}
生产
当用 编译时pdflatex
。
tiger.eps
是 TeX 主要发行版中包含的标准图像。