\includeonlyframes 和 pdftitle

\includeonlyframes 和 pdftitle

当我使用 时beamer\includeonlyframes{someframe}生成的 PDF 具有与整个文档相同的 pdftitle。有没有办法将 pdftitle 设置为 的标题someframe,这是我包含的唯一框架?

\documentclass{beamer}
\includeonlyframes{frametwo}
\title{Document title}
\begin{document}%
\begin{frame}[label=frameone]{Frame one}
Spam
\end{frame}
\begin{frame}[label=frametwo]{Frame two}
Eggs
\end{frame}
\end{document}

运行pdflatex mini结果以 PDF 格式显示,并带有标题文件名。有没有什么办法可以获取唯一编译的帧的标题?

答案1

您可以使用此选项禁止 Beamer 使用此功能,然后自行设置pdftitle使用。\hypersetup{pdftitle=<title>}usepdftitle=false

\documentclass[usepdftitle=false]{beamer}
\includeonlyframes{frametwo}
\hypersetup{pdftitle=frametwo}
\title{Document title}
\begin{document}%
\begin{frame}[label=frameone]{Frame one}
Spam
\end{frame}
\begin{frame}[label=frametwo]{Frame two}
Eggs
\end{frame}
\end{document}

如果您经常需要这样做和/或希望避免写两次名称,您可以重新定义\includeonlyframes以自动执行此操作:

\documentclass[usepdftitle=false]{beamer}

\makeatletter
\renewcommand\includeonlyframes[1]{%
    \hypersetup{pdftitle={#1}}%
    \def\beamer@framerestriction{#1,}%
}
\makeatother

但是,我没找到usepdftitle自动关闭的方法\includeonlyframes。关闭后,您将无法获得所有帧的标题。

相关内容