我正在用 Beamer 写论文幻灯片。当我使用框架环境中的 [allowframebreaks] 选项和 \newpage 开始新幻灯片时,我需要将幻灯片内容垂直对齐到中心。
如下一个例子:
\begin{frame}[allowframebreaks]
\frametitle{Outline}
Some text....
\newpage
Some text....
\begin{figure}[!ht]
\input{myimage.pdf_tex}
\end{figure}
\newpage
Some text....
\begin{figure}[!ht]
\input{myimage2.pdf_tex}
\end{figure}
\end{frame}
这里两个图始终位于幻灯片顶部,但不在垂直中心。我需要在使用 \newpage 切换到新幻灯片后将内容居中。
提前致谢。我非常感谢您的帮助。
答案1
来自beamer
手册:
默认情况下,幻灯片的所有材料都垂直居中。您可以使用以下类选项更改此设置:
\documentclass[t]{beamer}
将幻灯片文本放置在幻灯片的(垂直)顶部。这相当于垂直“齐平”。您可以使用 c 或 b 选项覆盖单个帧的此项。
\documentclass[c]{beamer}
将幻灯片文本放置在幻灯片的(垂直)中心。这是默认设置。您可以使用 t 或 b 选项为各个帧覆盖此设置。
因此,您可以使用类似下面的代码来垂直居中您的“损坏”框架:
\documentclass[t]{beamer} %<- 'c' is default option, 't' forces top aligned
\usepackage{lipsum}
\begin{document}
\begin{frame}[c,allowframebreaks]{centered frame} %<- 'c' forces to forget default
\lipsum[2]
\framebreak %<- with '\newpage' first frame is top aligned
\lipsum[5]
\end{frame}
\begin{frame}[allowframebreaks]{top aligned frame}
\lipsum[2]
\framebreak
\lipsum[5]
\end{frame}
\end{document}
你曾经\newpage
打破框架却说beamer
:
您可以插入 \break、\nobreak 和 \penalty 命令来控制断点发生的位置。命令 \pagebreak 和 \nopagebreak 以及它们的选项也有效。[...] 命令 \framebreak 是 \pagebreak 的简写,而 \noframebreak 是 \nopagebreak 的简写。
如果您使用的\newpage
第一张幻灯片是顶部对齐,那么使用\break
或\framebreak
。
beamer
手册中关于选项的最后一条评论allowframebreaks
:
使用此选项是邪恶的。在(好的)演示文稿中,您会仔细准备每张幻灯片,并在将内容放在某张幻灯片而不是其他幻灯片之前三思而行。使用此
allowframebreaks
选项会导致创建可怕的、无休止的演示文稿,这些演示文稿更像是“投影在墙上的纸张”,而不是演示文稿。尽管如此,此选项确实有其用途。最明显的是,它可以方便地自动拆分参考书目或长方程式。