為什麼 foreach 中的迭代器不起作用?

為什麼 foreach 中的迭代器不起作用?

我已將動畫 GIF 分割成幀並將它們儲存為 PNG 序列。我使用該類別beamer並希望從序列中載入圖像,在沒有自動啟動動畫的情況下相互替換。

\begin{frame}\frametitle{FooBar}
\foreach \x in {0,...,5} {
   \includegraphics<\x+1>[width=0.95\textwidth]{dbgp-setup2-\x.png}
}
\end{frame}

編譯器輸出表明

Latexmk: Missing input file: 'dbgp-setup2-.png' from line

檔案名稱應該是dbgp-setup2-0.png等等dbgp-setup2-1.png\x

答案1

解析器不會解析\x+1,因此您需要自行執行此操作。在這種情況下\x+1與計數重合,因此我們可以使用它。 (當然我沒有你的圖像,所以我重命名了一些標準圖像。)

\documentclass{beamer}
\usepackage{pgffor}
\begin{document}
\begin{frame}\frametitle{FooBar}
\foreach \x [count=\y] in {0,...,3} {
   \includegraphics<\y>[width=0.95\textwidth]{dbgp-setup2-\x}
}
\end{frame}
\end{document}

在此輸入影像描述

答案2

我不知道為什麼要把事情做得這麼複雜:

\documentclass{beamer}
\usepackage{pgffor}
\begin{document}
\begin{frame}\frametitle{FooBar}
\foreach \x in {0,...,3} {%
   \includegraphics<+>[width=0.95\textwidth]{dbgp-setup2-\x}%
}
\end{frame}
\end{document}

在此輸入影像描述

相關內容