由于某种原因我的beamer
\newcommand
当演示文稿被放置在环境中时,它不会编译frame
。这是一个最小的工作示例:
\documentclass{beamer}
\begin{document}
\begin{frame}{First slide}
\newcommand{\asdf}[1]{What is the #1 problem?}
\end{frame}
\end{document}
我收到以下错误:
\test 定义中的参数数量非法。
请注意,\asdf
定义宏后它甚至不会被使用。奇怪的是,当我将定义放在环境之外时frame
,一切都正常。这种奇怪行为的原因是什么?
答案1
添加fragile
应该可以解决问题:
\documentclass{beamer}
\begin{document}
\begin{frame}[fragile]{First slide}
\newcommand{\asdf}[1]{What is the #1 problem?}
\end{frame}
\end{document}