谁创建了 xxx-eps-converted-to.pdf 并且为什么我无法删除它?

谁创建了 xxx-eps-converted-to.pdf 并且为什么我无法删除它?

考虑以下代号simulator.tex

% simulator.tex
\documentclass[preview,border=12pt,varwidth]{standalone}
\usepackage{filecontents}

\begin{filecontents*}{input.tex}
\documentclass[tikz,border=12pt]{standalone}
\begin{document}
\begin{tikzpicture}
    \fill[red] (0,0) circle (2);
\end{tikzpicture}
\end{document}
\end{filecontents*}

\usepackage{graphicx}
\usepackage{pgffor}

\immediate\write18{pdflatex input}
\immediate\write18{pdftops -f 1 -l 1 -eps input.pdf output.eps}
\foreach \x in {tex,pdf,log,aux}{\immediate\write18{cmd /c del input.\x}}

\begin{document}
I am importing EPS image.\\
\includegraphics{output}
\immediate\write18{cmd /c del output.eps}
\immediate\write18{cmd /c del output-eps-converted-to.pdf}
\end{document}

我使用的是 Windows,因此上述代码的某些部分仅适用于 Windows。使用以下命令编译上述代码:

latex -shell-escape simulator
dvips simulator
ps2pdf -dAutoRotatePages=/None simulator.ps

并检查存在的文件夹的内容simulator.tex

谁创建的output-eps-converted-to.pdf以及为什么我无法删除它?

答案1

由于 pdfTeX 无法将 EPS 文件读取为图像,因此graphics配置文件graphics.cfg会加载包epstopdf(exacter epstopdf-base)。它使用 shell escape 功能将 EPS 文件动态转换为 PDF 文件。(它也可以配置为转换其他图像格式。)该包使用命名方案<original name>-<original extension>-converted-to.<new extension>来避免覆盖其他有价值的图像文件。

因此您很可能已经习惯了pdflatex处理simulator.tex。然后触发 到的\includegraphics{output}转换。output.epsoutput-eps-converted-to.pdf

相关内容