Beamer:在所有页面的背景中添加内容

Beamer:在所有页面的背景中添加内容

要编写库,我需要在 Beamer 文档的所有幻灯片上运行代码(以添加一些 pdf 注释而不更改间距)。问题是我无法做到:

\setbeamertemplate{background}{my code}

因为下次用户会将其删除\setbeamertemplate。我尝试这样做:

\patchcmd\ps@empty
{\usebeamertemplate***{background}}
{\usebeamertemplate***{background}my code}
{}
{}

\patchcmd\ps@navigation
{\usebeamertemplate***{background}}
{\usebeamertemplate***{background}my code}
{}
{}

但我不知道为什么它不起作用。知道我遗漏了什么吗?

平均能量损失

\documentclass[]{beamer}
\begin{document}
\setbeamertemplate{background}{I want this text to be on all slide, even if the user resets the background template}

\begin{frame}
  Hello
\end{frame}

\begin{frame}{My title}
  Hello
\end{frame}

\setbeamertemplate{background}{}
\begin{frame}
  Hello
\end{frame}

\begin{frame}{My title}
  Hello
\end{frame}

\end{document}

编辑:我意识到我需要做:

\patchcmd\@oddhead
{\usebeamertemplate***{background}}
{\usebeamertemplate***{background}my code}
{}
{}

相反...但我很好奇,想知道您是否有比修补 beamer 更好的替代方案。

相关内容