我正在用 Latex 写论文,需要.tif
包含多张图片。当然,我可以手动转换它们,但我更愿意让 Latex 来做这项工作以节省时间。
我正在尝试使用该epstopdf
包来转换文件,并在我的文档.tif
的序言中包含以下代码:.tex
\usepackage{epstopdf}
\epstopdfDeclareGraphicsRule{.tif}{png}{.png}{convert #1 \OutputFile}
\AppendGraphicsExtensions{.tif}
但是,这不起作用,我收到.tif
日志中文件行的错误,如下所示:
Package epstopdf Info: Source file: <picture.tif>
(epstopdf) date: 2015-08-18 14:06:10
(epstopdf) size: 1231850 bytes
(epstopdf) Output file: <picture-tif-converted-to.png>
(epstopdf) Command: <convert picture.tif picture-tif-converted-to.png>
(epstopdf) \includegraphics on input line 331.
runsystem(convert picture.tif picture-tif-converted-to.png)...executed.
Package epstopdf Info: Result file: <picture.png>.
! Package pdftex.def Error: File `picture.png' not found.
供您参考,我更改了文件名以使代码更简单一些。但这对问题来说并不重要。
此外,Texmaker 还告诉我以下信息:
Process started
Invalid Parameter - picture-tif-converted-to.png
Process exited with error(s)
我还尝试了以下命令,而不是上面的常规命令。我在一个论坛上找到了它们,这个答案被接受了,而且似乎有效:
\usepackage{epstopdf}
\DeclareGraphicsRule{.tif}{png}{.png}{`convert #1 `basename #1 .tif`.png}
\AppendGraphicsExtensions{.tif}
或者分别针对子文件夹“figures”中的同一张图片执行以下命令:
\usepackage{epstopdf}
\DeclareGraphicsRule{.tif}{png}{.png}{`convert #1 `dirname #1`/`basename #1 .tif`.png}
\AppendGraphicsExtensions{.tif}
这两个命令都会在 Texmaker 和日志文件中产生与上述常规命令相同的错误。
我还在序言中尝试了以下代码作为替代方案:
\usepackage{epstopdf}
\def\eattif#1.tif{#1}
\DeclareGraphicsRule{.tif}{png}{.png}{ `convert #1 \eattif#1-tif-converted-to.png }
\AppendGraphicsExtensions{.tif}
然而,这段代码甚至没有转换图片,而是产生了另一个错误,即}
第三行多了一个。我不知道这应该放在哪里。
由于我正在运行 Miktex,因此我还通过在 Texmaker 中使用 pdflatex 启用了 shell 扩展(针对上面发布的所有替代方案),如下所示:
pdflatex -synctex=1 -interaction=nonstopmode --shell-escape --enable-write18 %.tex
我现在不知道该如何让它工作。在我看来,包epstopdf
已成功调用,但在保存图片和文件的文件夹中没有输出文件.tex
,在我的电脑上也没有其他地方。
我正在使用该graphicx
包来包含我的照片。
也许你们中有人知道更多?
epstopdf 包是否可能与其他包冲突?
操作系统:Win7企业版64位
Latex:Basic Miktex 2.9.5640(今天更新了所有软件包)
编辑器:Texmaker 4.4.1
答案1
对于像我一样遇到此问题并因此而遇到困难的人:在安装 ImageMagick(转换所需)并重新启动 TexStudio 后,在我的情况下,带有 epstopdf 的第一个版本运行完美。