包含路径目录中带有空格的图像,以便使用 dvips 进行处理

包含路径目录中带有空格的图像,以便使用 dvips 进行处理

我有以下图像,希望将其包含在我的文档中:

wget http://www.biomedcentral.com/content/figures/1471-2164-10-37-1-l.jpg -O exampleImg.jpg

我需要通过编译数字视频接口。我使用 GraphicsMagick 将 jpg 转换为 eps 格式:

gm convert exampleImg.jpg exampleImg.eps

我使用了以下乳胶代码,它可以通过 dvi 和 ps 进行编译。

\documentclass[a4paper,10pt]{article}
\usepackage[utf8x]{inputenc}
\usepackage{wrapfig}
\usepackage{graphicx}
\usepackage{grffile}

%\usepackage[pdftex]{graphicx}

%opening
\title{}
\author{}

\begin{document}

\includegraphics[]{./test/exampleImg}

\end{document}

当我使用带空格的目录时,测试一下,它不再起作用了,尽管我使用\usepackage{grf文件}

\documentclass[a4paper,10pt]{article}
\usepackage[utf8x]{inputenc}
\usepackage{wrapfig}
\usepackage{graphicx}
\usepackage{grffile}

%\usepackage[pdftex]{graphicx}

%opening
\title{}
\author{}

\begin{document}

\includegraphics[]{./test test/exampleImg}

\end{document}

它给出了以下错误:

! LaTeX Error: Cannot determine size of graphic in ./test test/exampleImg (
no BoundingBox).

答案1

使用 Will 的代码(在加载 graphicx 后添加到序言中)并使用以下语法来包含图形:\includegraphics[width=5cm]{"Neuer Ordner/tiger"}我可以在 miktex 2.9./win XP 系统上使用 latex + dvips 处理文档。tiger.eps 的使用没有问题。无论我是否使用 grffile 都没关系。

但我强烈建议您避免在文件名或文件夹中使用空格:如果您切换到另一个驱动程序(pdflatex、xelatex 等)或另一个系统(TexLive、Linux),它可能会完全崩溃或仅在语法更改后才能正常工作。您花在解决问题上的时间可以用于更好的事情。

顺便说一句:我还想记住,dvips 不会包含具有绝对路径或引用父目录 (../) 的路径的 graphicx。

答案2

grffile 允许 pdfTeX 中的图像出现空格,但 dvips 中则不行。这里有一些来自 asymptote.sty 包的代码,用于处理 dvips 图形中的空格;也许会有帮助。只需将其放在你的序言中即可。

\制作字母
\def\Ginclude@eps#1{%
  \信息{}%
  \bgroup
  \def\@tempa{!}%
  \dimen@\Gin@req@width
  \[电子邮件保护]\放松
  \divide\dimen@\dimen@ii
  \@tempdima\Gin@req@height
  \divide\@tempdima\dimen@ii
    \特殊{PSfile=#1\空间
      llx=\Gin@llx\space
      lly=\Gin@lly\space
      urx=\Gin@urx\space
      ury=\Gin@ury\space
      \ifx\Gin@scalex\@tempa\else rwi=\number\dimen@\space\fi
      \ifx\Gin@scaley\@tempa\else rhi=\number\@tempdima\space\fi
      \ifGin@clip clip\fi}%
  \egroup
}
\makeatother

相关内容