如何在 beamer 类中使用暂停命令防止多重收集内容

如何在 beamer 类中使用暂停命令防止多重收集内容

我想用collect包存储问题的解决方案。在显示问题的几帧之后,解决方案通过\includecollection命令输入。当问题的代码包含\pause命令时,解决方案代码会被多次收集,例如 MWE。我看到\resetcounteronoverlays命令可以解决计数器的问题,但我找不到\newcommand\loigiai)的解决方案请帮助解决这个问题。提前谢谢您!

\documentclass[14pt, hyperref={unicode},aspectratio=169]{beamer} 
\usepackage{collect}
    \definecollection{excol}
    \newcommand{\loigiai}[1]{\begin{collect}{excol}{}{} #1\end{collect}}
\begin{document}
\begin{frame}
Content 1\\ \pause
Content 2\\ \pause
Content 3
\loigiai{Solution of problem -- only need one!!!}
\end{frame}

\begin{frame}
Solution \includecollection{excol}
\end{frame}
\end{document}

答案1

使用\only<.>{}您可以实现\loigiai仅在框架的最后一个覆盖上调用您的宏。

\documentclass[14pt, hyperref={unicode},aspectratio=169]{beamer} 
\usepackage{collect}
\definecollection{excol}
\newcommand{\loigiai}[1]{\begin{collect}{excol}{}{} #1\end{collect}}

\begin{document}
\begin{frame}
Content 1\\ \pause
Content 2\\ \pause
Content 3
\only<.>{\loigiai{Solution of problem -- only need one!!!}}
\end{frame}

\begin{frame}
Solution \includecollection{excol}
\end{frame}
\end{document}

在此处输入图片描述

相关内容