etoolbox 和 beamer:为什么我会收到错误?

etoolbox 和 beamer:为什么我会收到错误?

最近 问题激发了我的好奇心etoolbox(看起来很棒但我实际上从未使用过)。

经过快速检查,我没有发现etoolbox和之间存在任何明显的不兼容性beamer

当我尝试这个时我哪里错了?一定很傻...

%\documentclass{memoir}
%\documentclass{article}
\documentclass{beamer}

\usepackage{etoolbox}
\usepackage{tikz}

% This works fine
%\BeforeBeginEnvironment{tikzpicture}{\begin{center}}
%\AfterEndEnvironment{tikzpicture}{\end{center}}

% It generates an error
%\BeforeBeginEnvironment{tikzpicture}{\begin{frame}}
\BeforeBeginEnvironment{tikzpicture}{ \begin{frame} \frametitle{My TikZ} }
\AfterEndEnvironment{tikzpicture}{ \end{frame} }

\begin{document}
    \begin{tikzpicture}
        \node[circle,draw=red] {Test};
    \end{tikzpicture}
\end{document}

答案1

由于 beamer 帧是作为一个整体被抓取的,因此代码需要\end{frame}在文档中明确查看,否则它将会解析帧的末尾以寻找\end{frame}

相关内容