如何使用 for 循环包含多幅图像?

如何使用 for 循环包含多幅图像?

我想向我的文档添加许多图像。这些图像位于名为 的文件夹中./assets/images/,并按以下方式编号0.png, 1.png, ..., 100.png。如何在 Latex 中使用 for 循环包含它们?

目前我做了以下事情,这不是很美观:

\begin{figure}
    \centering
    \includegraphics{./assets/images/1.png}
    \includegraphics{./assets/images/2.png}
    \includegraphics{./assets/images/3.png}
    \includegraphics{./assets/images/4.png}
    % and so on
    \caption{}
    \label{}
\end{figure}

有没有办法做这样的事情:

\begin{figure}
    \centering
    for image in images:
        \includegraphics{./assets/images/ + image}
    \caption{}
    \label{}
\end{figure}

答案1

pgffor包为此类循环提供了一个非常简单的接口。我制作了一个辅助命令来根据需要更改图像数量;如果您在文档中多次使用相同的技术,这将非常有用,但您也可以轻松地对顶部值进行硬编码。

假设您的图像命名与您的示例相同。

\documentclass{article}
\usepackage{graphicx}
\usepackage{pgffor}
\newcommand{\setnumimages}[1]{\def\numimages{#1}}
\begin{document}
\setnumimages{5}
\begin{figure}
\foreach \x in {1,...,\numimages}{
    \includegraphics{./assets/images/\x}
}
\end{figure}
\end{document}

答案2

我的工作示例:

% mwe.tex 
\documentclass{article}
\usepackage{pgffor}  
\usepackage{mwe}
\usepackage{graphics}
\begin{document}

\foreach \fig in {a,b,c}%
   {My picture: example-image-\fig \par%
   \includegraphics[width=4cm]{example-image-\fig}%
     \par%
     \vspace{2ex}}
\end{document}

相关内容