我发现点击正确的投影仪符号很棘手,而且不相信自己在演示过程中能做到这一点。请参阅这里举例来说。因此,我想减少投影仪符号的数量,最好是两个:“上一张幻灯片前一帧”表示向后,而“上一张幻灯片下一帧”表示向前。(实际上,默认情况下不存在“上一张幻灯片下一帧”符号,因此这可能涉及创建一个新的投影仪符号?最坏的情况是,我可以使用符号“上一张幻灯片前一帧”和“上一张幻灯片当前帧”,并通过在“上一张幻灯片当前帧”和通常的“下一张幻灯片”之间切换来向前移动。)
摘自beamer 文档,我知道我可以通过以下方法将符号数量缩小到 4
\setbeamertemplate{navigation symbols}{\insertframenavigationsymbol}
。
[对于一个问题来说,这可能太多了,但理想情况下,我想将上面描述的两个投影仪符号链接到一个答题器,以便 1) 符号不会使幻灯片杂乱无章,2) 我可以不使用鼠标来使用它们。但有这两个符号已经很好了,因为当被问到需要我快速翻阅幻灯片的问题时,我可以去笔记本电脑并单击符号。我也不确定是否可以使用这样的答题器。]
\documentclass{beamer}
\setbeamertemplate{navigation symbols}{\insertframenavigationsymbol}
\begin{document}
\begin{frame}{Frame 1}
a\pause
b\pause
c
\end{frame}
\begin{frame}{Frame 2}
d\pause
e\pause
f
\end{frame}
\begin{frame}{Frame 3}
g\pause
h\pause
i% now suppose I get a question that requires me to go back to frame 1. I don't want to click through the 2 pause commands of frame 2.
\end{frame}
\end{document}
答案1
您可以重新定义框架导航符号,使其仅包含指向前一框架末尾和下一框架开头的两个链接。
(这比“最后一张幻灯片下一帧”要容易得多,因为 beamer 还不知道下一帧可能有多少张幻灯片。对于下一帧的第一张幻灯片,它只需要知道当前帧有多少张幻灯片,然后将这个数字加 1)
\documentclass{beamer}
\hypersetup{pdfborder={0 0 1}} % just for this example to see the links
\makeatletter
\def\insertframenavigationsymbol{%
\begin{pgfpicture}{0pt}{-1.5pt}{20pt}{5.5pt}
\pgfuseobject{beamerframenavstrong}%
\usebeamercolor[fg]{navigation symbols dimmed}
\pgfuseobject{beamerframenavlight}%
\end{pgfpicture}\kern-20pt%
\hyperlinkframeendprev{\beamer@linkspace{10pt}}%
\hyperlinkframestartnext{\beamer@linkspace{10pt}}}
\makeatother
\setbeamertemplate{navigation symbols}{\insertframenavigationsymbol}
\begin{document}
\begin{frame}{Frame 1}
a\pause
b\pause
c
\end{frame}
\begin{frame}{Frame 2}
d\pause
e\pause
f
\end{frame}
\begin{frame}{Frame 3}
g\pause
h\pause
i% now suppose I get a question that requires me to go back to frame 1. I don't want to click through the 2 pause commands of frame 2.
\end{frame}
\end{document}