即使我t
在 Beamer 演示文稿中使用类选项,太高的表格不仅会向下溢出,还会向上溢出一点。有没有办法确保太高的表格只向下溢出?
\documentclass[t]{beamer}
\begin{document}
\begin{frame}{Test}
\begin{table}
\caption{Lorem ipsum dolor sit amet, consectetur adipisicing elit}
\begin{tabular}{@{} r @{}}
1 \\
2 \\
3 \\
4 \\
\end{tabular}
\end{table}
\end{frame}
\begin{frame}{Test}
\begin{table}
\caption{Lorem ipsum dolor sit amet, consectetur adipisicing elit}
\begin{tabular}{@{} r @{}}
1 \\
2 \\
3 \\
4 \\
5 \\
6 \\
7 \\
8 \\
9 \\
10 \\
11 \\
12 \\
13 \\
14 \\
15 \\
16 \\
17 \\
18 \\
19 \\
20 \\
\end{tabular}
\end{table}
\end{frame}
\end{document}
答案1
有趣的是,在您的 MWE 中,当第二个表中只有 14 行时,问题就消失了。将 #15 添加到表中不溢出但一切都在向上。
更新
为了解决这个问题,我们重新定义了环境table
, 用替换了\begin{center}
...。\end{center}
\centering
不需要对 beamer 文档的内容进行任何改变。
\documentclass[t]{beamer}
% *************************** added <<<<<<<<<<<<
\makeatletter
\renewenvironment{table}[1][]{%
\def\@captype{table}%
\par\nobreak\centering} % before \par\nobreak\begin{center}\nobreak}
{\par\nobreak} % before {\par\nobreak\end{center}\nobreak}
\makeatother
% ***************************
\begin{document}
\begin{frame}{Test}
\begin{table}[t]
\caption{Lorem ipsum dolor sit amet, consectetur adipisicing elit}
\begin{tabular}{@{} r @{}}
1 \\
2 \\
3 \\
4 \\
\end{tabular}
\end{table}
\end{frame}
\begin{frame}{Test}
\begin{table}
\caption{Lorem ipsum dolor sit amet, consectetur adipisicing elit}
\begin{tabular}{@{} r @{}}
1 \\
2 \\
3 \\
4 \\
5 \\
6 \\
7 \\
8 \\
9 \\
10 \\
11 \\
12 \\
13 \\
14 \\
15 \\
16 \\
17 \\
18 \\
19 \\
20 \\
\end{tabular}
\end{table}
\end{frame}
\end{document}
笔记
投影机环境figure
以平等的方式定义。
因此,同样的问题也会出现在数字较大但不会溢出的情况下:标题会向上滚动。
类似的解决方案将重新调整字幕。
\documentclass[t]{beamer}
\usepackage{graphicx}
\setbeamertemplate{footline}[frame number]
\setbeamertemplate{navigation symbols}{}
\setbeamercolor{footline}{fg=blue}
% *************************** added <<<<<<<<<<<<
\makeatletter
%\renewenvironment{figure}[1][]{% original in beamerbaselocalstructure.sty
% \def\@captype{figure}%
% \par\nobreak\begin{center}\nobreak}
% {\par\nobreak\end{center}}
\renewenvironment{figure}[1][]{% new definition
\def\@captype{figure}%
\par\nobreak\centering}
{\par\nobreak}
\makeatother
% ***************************
\begin{document}
\begin{frame}{Test figure I}
\begin{figure}
\caption{Lorem ipsum dolor sit amet, consectetur adipisicing elit}
\includegraphics[height= 100pt]{example-image}
\end{figure}
\end{frame}
\begin{frame}{Test figure II}
\begin{figure}
\caption{Lorem ipsum dolor sit amet, consectetur adipisicing elit}
\includegraphics[height= 198pt]{example-image}
\end{figure}
\end{frame}
\end{document