让我们考虑以下反映我简化场景的代码。我想为每张幻灯片显示一个不同的整数。当然,真实的场景不会做这么愚蠢的事情。
\documentclass{beamer}
\usepackage{pgffor}
\begin{document}
\begin{frame}
\foreach \x in {0,1,2}{%
\foreach \y in {0,1}{%
\only<\numexpr2*\x+\y+1\relax>{\numexpr2*\x+\y+1\relax}}}
\end{frame}
\end{document}
我的问题是为什么嵌套循环的旋转超出了我的预期?理论上应该总共有 6 张幻灯片。
答案1
你失踪了\the
\documentclass{beamer}
\usepackage{pgffor}
\begin{document}
\begin{frame}
\foreach \x in {0,1,2}{%
\foreach \y in {0,1}{%
\only<\the\numexpr2*\x+\y+1\relax>{\the\numexpr2*\x+\y+1\relax}}}
\end{frame}
\end{document}
\numexpr
就像一个匿名计数寄存器。对于里面的部分,{}
您需要\the
(或\number
或\romannumeral
等)生成文本形式,就像您希望的那样\count@
。对于里面的部分,<>
它所做的就是+
寻找 beamer<+->
语法。所以你需要尽快将其扩展。