使 beamer 的 textheight 正好为可用大小

使 beamer 的 textheight 正好为可用大小

以下代码会产生“Overfull \vbox (1.0pt too high)”的错误。

\documentclass{beamer}

\begin{document}
\begin{frame}%
    \rule{1cm}{\textheight}%
\end{frame}
\end{document}

例如,这可以防止使用简单的方法显示以最佳比例缩放的图形(居中和):(\centering\href{https://imgs.xkcd.com/comics/git.png}{\includegraphics[width = \textwidth, height = \textheight, keepaspectratio]{xkcd.png}}假设不需要警告)。

(我很惊讶没有人似乎已经注意到了这一点,这是否特定于我的设置?)

另外,有趣的是,当使用页眉和页脚时,\textheight似乎调整正确,但仍然偏离一点。

出于好奇,我的第一个问题是(假设这不是我的设置特有的问题):为什么会这样,为什么恰恰关闭了一个点?

我的第二个问题更实际,那就是:如何解决这个问题?我意识到我可以textheight在使用它之前通过减去一个点来手动调整长度,但是有没有更优雅的解决方案(比如说,可以真正计算出投影仪模板中幻灯片上的可用高度)?

答案1

该规则被设置为页面第一段的第一行,因此其参考点\topskip 以下顶部太高了,放不下,所以你\lineskip在它上面涂上 1pt 的胶水。

\nointerlineskip您可以使用(或设置\lineskip为零或...)抑制线上方的空间

\documentclass{beamer}

\begin{document}
\begin{frame}%

\nointerlineskip
    \rule{1cm}{\textheight}%
\end{frame}
\end{document}

相关内容