我已经使用 Emacs + AUCTeX 好几年了,突然间,所有之前编译正常的文档都出现了以下错误:
错误:包 pdftex.def 错误:预期为 PDF 模式,但检测到 DVI 模式!
下面的非常基本的文档可以重复此错误。在 Emacs 中,我输入C-c C-c
然后选择LaTeX
。这就是我一直做的事情,我假设 AUCTeX 会自动确定运行pdflatex
命令。当我pdflatex
从命令行运行时,tex 文件会编译而不会出现错误。
\documentclass{article}
\usepackage[pdftex]{graphicx}
\begin{document}
\end{document}
错误来自[pdftex]
。换句话说,\usepackage{graphicx}
没有 也可以正常工作[pdftex]
具体来说,错误来自于pdftex.def:
\ifnum\pdfoutput<1 %
\GPT@error{%
PDF mode expected, but DVI mode detected!\MessageBreak
If you are using `latex', then call `pdflatex'.\MessageBreak
Otherwise check and correct the driver options.\MessageBreak
Error recovery by switching to PDF mode%
}\@ehc
\pdfoutput=1 %
\fi
似乎\pdfoutput
没有被设置为 1,也许在我过去使用 AUXTeX 的所有时间里,它都被设置为 1。有什么变化?
我在用着:
- Ubuntu 10.10
- pdfTeX 3.1415926
- AUCTeX 11.85
- Emacs 23.1.1
答案1
唯一改变的是 pdftex.def 现在会测试您是否正在为此驱动程序文件使用正确的引擎/模式。您会收到错误,因为您显然使用了错误的模式。删除该选项。然后它将与 latex/dvi-output 和 pdflatex/pdf output 一起工作。graphics 足够聪明,可以选择正确的驱动程序文件。
答案2
我在使用 texstudio 时遇到了类似的错误
!LaTeX 错误:无法确定 xxxx.pdf 中图形的大小(没有 BoundingBox)。
错误是由于“构建和视图”设置为“数字视频接口->pdf 链”。
解决方案是设置
配置->构建->构建和查看->编译并查看
或者 ”pdf 链“。
答案3
你必须使用 pdflatex
如果您使用的是 latex ',则调用 pdflatex'。因此,使用 Texmaker 制作一个,它使用 pdflatex。
选项 -> 配置 Texmaker/TexStudio.. - 编译> 快速 -> pdflatex + ViewPDf