我有一个 Beamer 演示文稿,其中每张幻灯片上都有一些超链接。这些超链接允许跳转到 PDF 中的不同部分。
有时这些按钮会干扰幻灯片中的文本、公式和图形。有没有办法让它们仅在按下某个键时才可见?
代码:
\documentclass{beamer}
\AtBeginSection[]{\label{sec:\thesection}}
\newcounter{prevsec}
\title{Some Title}
\setbeamertemplate{navigation symbols}{}
\setbeamertemplate{footline}{%
\setcounter{prevsec}{\thesection}
\ifnum\theprevsec>1
\addtocounter{prevsec}{-1}
\fi
\quad\hyperlinkpresentationstart{\beamerreturnbutton{Back to start}}%
\quad\hyperlinksectionstart{\beamerreturnbutton{Back to section start}}%
\quad\hyperlink{Detailed_Analysis}{\beamergotobutton{Detailed Analysis}}%
\quad\hyperlinksectionstartnext{\beamerskipbutton{Next section}}%
\quad\hyperlink{sec:\theprevsec}{\beamerskipbutton{previous section}}%
\vspace*{0.2cm}%
}
\begin{document}
\section{sec1}
\begin{frame}%{ss}
1st section/ page 1 out of 1
\end{frame}
\begin{frame}
1st section/ page 2 out of 2
\end{frame}
\begin{frame}[label=Detailed_Analysis]
Detailed Analysis
\end{frame}
\section{sec2}
\begin{frame}
2nd section
\end{frame}
\section{sec3}
\begin{frame}
3rd section
\end{frame}
\begin{frame}
More content on the 3rd section
\end{frame}
\begin{frame}
Even More content on the 3rd section
\end{frame}
\end{document}
答案1
这是基于 OCG(即 PDF 层)的解决方案,可在 Acrobat Reader 中运行。
无需按下任何键,只需通过将鼠标指针靠近滑动脚来切换导航控件的可见性:
\documentclass{beamer}
\usepackage{ocgx2}
%patch hyperref to make PDF Annotations PDF-Layer-(OCG)-aware
\makeatletter
\let\Hy@setpdfborderOrig\Hy@setpdfborder
\def\Hy@setpdfborder{\ocgbase@insert@oc\Hy@setpdfborderOrig}%
\makeatother
\AtBeginSection[]{\label{sec:\thesection}}
\newcounter{prevsec}
\title{Some Title}
\setbeamertemplate{navigation symbols}{}
\setbeamertemplate{footline}{%
\setcounter{prevsec}{\thesection}%
\ifnum\theprevsec>1
\addtocounter{prevsec}{-1}%
\fi%
\parbox{\paperwidth}{%
\toggleocgs[triggerocg=onmouseenter]{navLayer}{\phantom{\rule{\paperwidth}{.2cm}}}\\
\begin{ocg}{navLayer}{navLayer}{off}
% dumb PDF annotation to work-around an AR bug
\immediate\pdfannot width 3pt height 3pt depth 0pt{/Ff 65537/FT/Btn/Subtype/Widget}%
\quad\hyperlinkpresentationstart{\beamerreturnbutton{Back to start}}%
\quad\hyperlinksectionstart{\beamerreturnbutton{Back to section start}}%
\quad\hyperlink{Detailed_Analysis}{\beamergotobutton{Detailed Analysis}}%
\quad\hyperlinksectionstartnext{\beamerskipbutton{Next section}}%
\quad\hyperlink{sec:\theprevsec}{\beamerskipbutton{previous section}}%
\end{ocg}\\%
\toggleocgs[triggerocg=onmouseenter]{navLayer}{\phantom{\rule{\paperwidth}{.2cm}}}%
}%
}
\begin{document}
\section{sec1}
\begin{frame}%{ss}
1st section/ page 1 out of 1
\end{frame}
\begin{frame}
1st section/ page 2 out of 2
\end{frame}
\begin{frame}[label=Detailed_Analysis]
Detailed Analysis
\end{frame}
\section{sec2}
\begin{frame}
2nd section
\end{frame}
\section{sec3}
\begin{frame}
3rd section
\end{frame}
\begin{frame}
More content on the 3rd section
\end{frame}
\begin{frame}
Even More content on the 3rd section
\end{frame}
\end{document}