如何立即让投影仪中的算法实现覆盖感知?
在投影仪演示中使用算法2e时,带有覆盖的帧上的算法可以获得多个数字。
例如,此代码生成两张幻灯片,其中相同的算法得到两个不同的数字。
\documentclass{beamer}
\usepackage[boxruled,vlined,linesnumbered]{algorithm2e}
\usepackage{hyperref}
\begin{document}
\begin{frame}\frametitle{my algorithm}
\begin{algorithm}[H] \caption{my algorithm}
do this\;
then do that\;
\end{algorithm}
\pause
Some explanations.
\end{frame}
\end{document}
问题似乎是算法环境不是“覆盖感知”。我尝试使用
\resetcountonoverlays{algorithm}
但这只是阻止了文件完全编译。
答案1
正确的计数器是algocf
而不是algorithm
。此外,您必须使用\resetcounteronoverlays
而不是 ,\resetcountonoverlays
因为algocf
定义为
\newcounter{algocf}
换句话说,在序言中添加以下行
\resetcounteronoverlays{algocf}
解决了这个问题。
梅威瑟:
\documentclass{beamer}
\usepackage[boxruled,vlined,linesnumbered]{algorithm2e}
\usepackage{hyperref}
\resetcounteronoverlays{algocf}
\begin{document}
\begin{frame}\frametitle{my algorithm}
\begin{algorithm}[H] \caption{my algorithm}
do this\;
then do that\;
\end{algorithm}
\pause
Some explanations.
\end{frame}
\end{document}
输出