防止过高的表格在顶部对齐的 Beamer 框架中向上溢出

防止过高的表格在顶部对齐的 Beamer 框架中向上溢出

即使我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 文档的内容进行任何改变。

Z Z

\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

相关内容