最近我构建了我的第一个 LaTeX beamer 主题。
该主题是开源的,可从以下网址获取https://code.europa.eu/pol/european-commission-latex-beamer-theme/(它与 Nix 集成,因此任何想要使用 LaTeX 或 Pandoc 创建文档的人都可以使用一个命令快速设置其环境)
该主题也可在 Overleaf 上使用:https://www.overleaf.com/latex/templates/european-commission/qtzkhyvfxbrw
您可以在此处找到使用它生成的文档的示例:https://github.com/ecphp/session--complexity-and-monads/releases/download/v11-c200d1f/11--complexity-and-monads--c200d1f.pdf
我提出这个问题是因为我在使用时注意到了一些事情\notes{}
。当我这样启用它们时:
\setbeameroption{show notes on second screen=right}
\setbeamerfont{note page}{size=\tiny}
自定义 beamer 主题模板endpage
不再呈现。
模板endpage
定义在这里:https://code.europa.eu/pol/european-commission-latex-beamer-theme/-/blob/master/src/latex/ec/style/beamerthemeec.sty#L19
这基本上是该文件的最后一页,其中包含一些法律信息和许可证。
我在这里做了一个 MWE:
\documentclass{beamer}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
% If you comment the two following lines, you will see the last page of the PDF
\setbeameroption{show notes on second screen=right}
\setbeamerfont{note page}{size=\tiny}
\makeatletter
\setbeamertemplate{endpage}{
\begin{frame}
The last slide
\end{frame}
}
\makeatother
\AtEndDocument{\usebeamertemplate{endpage}}
\begin{document}
\begin{frame}[plain]
\titlepage
\end{frame}
\section{Introduction}
\subsection{Proof of the Main Theorem}
\begin{frame}
\frametitle{There Is No Largest Prime Number}
\framesubtitle{The proof uses \textit{reductio ad absurdum}.}
\begin{theorem}
There is no largest prime number.
\end{theorem}
\end{frame}
\end{document}
尝试渲染此文档,您将看到最后一帧未被渲染。
然后删除两行:
\setbeameroption{show notes on second screen=right}
\setbeamerfont{note page}{size=\tiny}
并再次渲染文档,最后一帧就在那里。
因此,我来这里是为了就这个特定问题寻求一些帮助。
还可以随意在全球范围内审查主题,并让我知道我是否做得正确,您可以在此目录中找到主题的来源:https://code.europa.eu/pol/european-commission-latex-beamer-theme/-/tree/master/src/latex/ec/style
提前致谢!
答案1
您可以使用以下方法解决该问题\AddToHook{env/document/end}{\usebeamertemplate{endpage}}
:
\documentclass{beamer}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
% If you comment the two following lines, you will see the last page of the PDF
\setbeameroption{show notes on second screen=right}
\setbeamerfont{note page}{size=\tiny}
\makeatletter
\setbeamertemplate{endpage}{
\begin{frame}
The last slide
\end{frame}
}
\makeatother
\AddToHook{env/document/end}{\usebeamertemplate{endpage}}
\begin{document}
\begin{frame}[plain]
\titlepage
\end{frame}
\section{Introduction}
\subsection{Proof of the Main Theorem}
\begin{frame}
\frametitle{There Is No Largest Prime Number}
\framesubtitle{The proof uses \textit{reductio ad absurdum}.}
\begin{theorem}
There is no largest prime number.
\end{theorem}
\end{frame}
\end{document}