如何使用新环境在 Beamer 中定义自定义框架

如何使用新环境在 Beamer 中定义自定义框架

我想更改演示文稿投影仪中每一帧内的文本分布,我尝试使用\newenvironment但每次都出现错误:

扫描使用 \beamer@collect@@body 时文件结束

我的 MWE:

\documentclass{beamer}
\usepackage{lipsum}

\newenvironment{myframe}{\begin{frame}{test}
\begin{minipage}{\textwidth}}{\end{minipage}
\end{frame}}

\begin{document}
\begin{frame}{test}
\begin{minipage}{0.7\textwidth}
\lipsum[1]
\end{minipage}
\end{frame}

\begin{myframe}
\lipsum[1]
\end{myframe}

\end{document}

这个问题有解决办法吗?

答案1

在这种情况下,这个包environ很方便。它看起来如下:

\documentclass{beamer}
\usepackage{lipsum}
\usepackage{environ}

\NewEnviron{myframe}[1][]{%
\begin{frame}{#1}
\begin{minipage}{\textwidth}
\BODY
\end{minipage}
\end{frame}
}

\begin{document}
\begin{frame}{test}
\begin{minipage}{\textwidth}
\lipsum[1]
\end{minipage}
\end{frame}

\begin{myframe}[Test]
\lipsum[2]
\end{myframe}

\begin{myframe}
\lipsum[2]
\end{myframe}

\end{document}

在此处输入图片描述

我已将框架标题在新环境中设为可选项。

相关内容