在命令中使用计数器创建文件名

在命令中使用计数器创建文件名

下面的代码并不像我希望的那样高效:

\documentclass{article}

\usepackage{graphicx}

\newcounter{nomfigcpt} % compteur pour compter les figures insérées dans le document
\newcommand{\nomfig}{\jobname\_fig\_\thenomfigcpt.pdf\stepcounter{nomfigcpt}}

\begin{document}

\nomfig

\nomfig

%\includegraphics[scale=1]{\nomfig}

\end{document}

正如你在 pdf 上看到的命令

\nomfig

是有效的,但是当我想使用它

\includegraphics

它不起作用,因为文件位于目录中。

我认为我的解决方案太过幼稚,并且我尝试寻找解决方案但没有成功。

我使用 pdflatex -synctex=0 -shell-escape -interaction=nonstopmode %.tex

有人能幫助我嗎?

答案1

强制参数必须\includegraphics扩展为字符串,以便识别文件名。\stepcounter{...}该参数中不能使用诸如 之类的指令。

一个简单的解决方法是使用一个新命令:

\newcommand{\numberedimage}[1][]{%
  \includegraphics[#1]{\jobname_fig_\arabic{nomfigcpt}}%
  \stepcounter{nomfigcpt}%
}

因此你可以调用以下任一形式:

\numberedimage

\numberedimage[width=\textwidth]

相关内容