有没有办法指定每个 \frametitle 都应该有作为覆盖规范?

有没有办法指定每个 \frametitle 都应该有作为覆盖规范?

beamerarticle从与我的演示文稿相同的文件中制作了 -powered 讲义。我不想有任何 \frametitle讲义中的 。有没有办法告诉 Beamer 我希望 every\frametitle仅在模式下可见<presentation>?(当然,我可以定义一个宏\presframetitle#1作为 的简写\frametitle<presentation>{#1},但我宁愿不这样做。)

答案1

通常beamerarticle.sty将框架标题定义为

\defbeamertemplate<article>*{frametitle}{default}{\paragraph*{\insertframetitle}\ \par\noindent\emph{\insertframesubtitle}\par}

但您可以提供自己的定义,例如:

\documentclass{article}

\usepackage{beamerarticle}
\defbeamertemplate<article>*{frametitle}{empty}{}

\begin{document}
\section{Section}
\subsection{Subsection}
\begin{frame}
    \frametitle{test}
    abc
\end{frame}

\end{document}

答案2

你最好提供一个替代定义

\mode<article>{\renewcommand\frametitle[1]{}}

值得注意的是,虽然beamer有全局默认覆盖规范,但并不是每个元素都有。对于类似的东西frametitle是可行的,但对于其他元素则不行:想象一下itemize,它可能位于一个块中,一个列中,或者两者兼而有之……

相关内容