2010-06-01 64 views
4

我写了一篇乳胶研究论文,并使用Kile生成pdf。现在我还需要一个dvi文件。 Kile的快速构建过程不提供dvi文件,但其'Latex'编译过程确实如此。dvi代:无边框

所以我试图编译该文件,它给出了includegraphics说“figure not found”的错误。当我将正确的扩展名附加到图像名称时,该错误停止,但新错误出现“bounding box is missing”。

我添加了边界框值,现在正在生成DVI文件。我的问题是:我尝试给出非常高和低的边界框值,但PDF中没有变形。为什么?我可以生成一个DVI而不提供包围盒值吗?

回答

4

通常情况下,LaTeX接受与PDFLaTeX不同的图形文件格式。也就是说,您可以包含.pdf和.jpg并运行PDFLaTeX而不会出现问题(您的情况,我想),但运行LaTeX可能会导致一些错误(如您所述,未找到图)。

要使用LaTeX编译文档,您需要提供.eps图形文件,默认情况下会包含边界框。

过度简化,LaTeX与箱子和箱子一起工作,并且它设法在页面中放置好箱子。

这就是为什么你需要为你的图片提供一个边界框:它是包含你的图的框的大小。

+0

非常感谢您的回答 – Akshey 2010-06-02 05:25:09

4

Alessandro的回答是正确的,但如果你不熟悉Tex景观,也许有点神秘。

创建输出文件有两种主要的方式来创建c文件,称之为路径:输出dvi的Web2c路径和输出pdf的Pdftex路径。 Web2c路径包含使用Postscript特色的dvi文件中的图形,并且不能嵌入pdf图形。由于您被要求提供一个dvi文件,这意味着您必须将您的PDF图形转换为eps。

另一种机制Pdftex路径是将图形嵌入为pdf。 Postscript不能直接用这种方式嵌入,因为pdf本质上是一种计算上残缺的Postscript形式(带有铃声和哨声),所以Postscript的编程结构不能在没有运行Postscript程序的情况下被翻译成pdf,而pdftex不支持。但可以嵌入pdf和svg格式,以及许多位图格式,如jpg。

还有三点:首先,\includegraphics代码对于两条路径是不同的:它根据我们是否在不同的文件扩展名,并且对它们有不同的行为。其次,pdftex程序可以创建pdf或dvis:它可以看到它是如何被调用的,或者(对于Latex)pdflatexlatex。第三,对于Xetex来说,还有另一条第三条路径,它的目标是与dvi格式略有不同,它的xdv格式以不同的方式处理字体和字符集,但在其他方面与dvi类似。

因此,你的问题与dvi的边界框无关,但无论如何要回答:dvi格式没有边界框的概念,事实上dvi文件没有足够的信息来计算边界框,因为它们显示从字体中放置字符的位置,但不包括字体指标:您必须查看该信息的字体指标文件。另外,有了Postscript的特殊功能,我们必须运行Postscript引擎来查找Postscript图形的范围。

+0

非常感谢您的回答 – Akshey 2010-06-02 05:25:47