在 beamer 中让 algorithm2e 环境“覆盖感知”

在 beamer 中让 algorithm2e 环境“覆盖感知”

如何立即让投影仪中的算法实现覆盖感知?

在投影仪演示中使用算法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} 

输出

在此处输入图片描述 在此处输入图片描述

相关内容