最近,我被迫重新安装我的 MikTeX 发行版。现在,在编译时没有实际 tex 错误的文档中,缺少我以 eps 文件形式包含的图形。但是,出现了以下错误:
MiKTeX GPL Ghostscript 9.05:无法恢复的错误,退出代码 1。
我正在pdflatex
与该包结合使用auto-pst-pdf
,以便能够在中使用 eps-graphics pdflatex
。
我安装了以下版本:basic-miktex-2.9.5105-x64,今天所有软件包都已更新。但是,我也尝试了 x32 版本,结果相同。
不幸的是,我没法真正找到问题所在并生成 MWE。删除文档的某些部分似乎会使图形出现,更重要的是,添加更多图形会使文档无法再无错误地进行编译,尽管我确信当我使用初始配置时,完全相同的文档可以很好地进行编译。
我已阅读相关问题:
auto-pst-pdf 抛出“MiKTeX GPL Ghostscript 9.05:无法恢复的错误,退出代码 1”
Ghostscript 8.57:无法恢复的错误,退出代码 1
但是,他们没有提到丢失的图像或类似的事情。
关于如何修复该问题有什么想法吗?
有趣的是,文档编译时latex
没有任何错误,并且所有图像都显示出来。但pdflatex
我看不到图像,但收到警告,浮动元素对于页面来说太大了。
同时,我也安装了 tex-live 和其他版本的 miktex,但都出现同样的错误。
正如评论中指出的那样,auto-pst-pdf
使用 eps 文件与 pdflatex 不是必需的。从此包切换到epstopdf
解决了部分问题:文档编译时没有错误,并且包含所有图形。但是我希望能够psfrag
在我的图表上使用。当我这样做时,epstopdf
标签不会被替换,即我需要使用auto-pst-pdf
或pstool
(见下文)。
我能够制作一个 MWE:
\documentclass[]{scrreprt}
\usepackage[english]{babel}
\usepackage[onehalfspacing]{setspace}
\frenchspacing
\usepackage{siunitx}
\usepackage{psfrag}
\usepackage{pstool}
\usepackage{graphicx}
\usepackage[scaled=.83]{beramono}
\usepackage[libertine]{newtxmath}
\usepackage{chemnum}
\usepackage{chemgreek}
\selectchemgreekmapping{newtx}
\usepackage{chemmacros}
\chemsetup[nmr]{
delta = (ppm) ,
pos-number = side ,
use-equal,
format = \bfseries,
list=true ,
coupling-nuclei-pre = { },
coupling-nuclei-post = { } ,
coupling-pos = sub,
% coupling-pos-cs = \ensuremath , % <<< added
atom-number-cs = \ensuremath % <<< added
}
\sisetup{
separate-uncertainty ,
per-mode = symbol ,
range-phrase = -- ,
detect-mode = false ,
detect-weight = true ,
mode = text ,
text-rm = \libertineLF % use libertine with lining figures
}
\begin{document}
Testing psfrag:
\begin{figure}[htbp]
\centering
\psfragfig*[scale=1.0]{./intro/test}{\replacecmpd[tag=test]{test}\replacecmpd[tag=rrr]{rrr}}
\caption{Test}\label{fig:test}
\end{figure}
\end{document}
似乎chemmacros
产生了错误,因为如果删除它,所有标签都会被正确替换。如果我使用auto-pst-pdf
而不是 ,我会得到完全相同的错误pstool
。
这是编译过程中使用和创建的所有文件的 Dropbox 链接:
https://www.dropbox.com/sh/jtxchech4r20pfw/AACHdaxVNyzgQi-uT3CABFGka?dl=0