包含文件名包含“#”的 EPS 文件时出现问题

包含文件名包含“#”的 EPS 文件时出现问题

我在将 EPS 包含在 LaTeX 文档中时遇到问题。我正在使用latex-> dvips->ps2pdf工作流来编译 LaTeX 文档文件。错误如下

定义中的参数数量非法

EPS文件是OriginPro7.5默认输出生成的,可以在Ubuntu的evince中查看,那么eps文件要成功导入到LaTeX中有什么要求吗?

编辑:更具体地说,下面是 LaTeX 代码片段,

\begin{figure}
\centering
\includegraphics[width=4.5cm]{figures/A.eps}
\end{figure}

引发以下错误,

! Illegal parameter number in definition of \@tempb.
<to be read again>
1.6 ...idth=4.5cm]{figures/A.eps}

但是当我A.eps用替换时B.eps,系统工作正常,这让我相信这是EPS文件的问题。

EDIT2:实际文件名包含特殊字符#,这是导致此问题的原因。#从文件名中删除后,问题解决。

答案1

\includegraphics它工作时,它将文件名存储在宏中,因此诸如rand_#_sample0.5_1.eps将产生非法

\def\@tempb{rand_#_sample0.5_1.eps}

因此#文件名中不允许有“no”。

答案2

可以说这是 latex 中的一个错误,请提交错误报告,latex latexbug 并按照说明在图形类别中提交错误

同时,如果重命名文件不方便,我相信这应该可行

\edef\f{rand_\string#_sample0.5_1.eps}
\includegraphics[...]{\f}

相关内容