Beamer 中高度填充小页面

Beamer 中高度填充小页面

我试图使用动画将 Beamer 框架中的物体精确居中。为此,我想使用minipages固定高度,它应该会自动推断,这样我就不必猜测每个框架要指定的正确高度。我尝试执行以下操作,但不起作用:

\documentclass{beamer}

\usetheme{Ilmenau}
\useoutertheme{smoothbars}
\usecolortheme{seahorse}

\begin{document}

\begin{frame}
    \begin{minipage}{1\linewidth}
        List
        \begin{itemize}
            \item<1-> Point 1
            \item<2-> Point 2
        \end{itemize}
    \end{minipage}
    \only<1>{
        \begin{minipage}[c][\fill]{1\textwidth}
            \centering
            centered text
        \end{minipage}}
    \only<2>{
        \begin{minipage}[c][\fill]{1\textwidth}
            \centering
            \color{green}{\rule{4cm}{3cm}}
        \end{minipage}}
\end{frame}

\end{document}

为什么这不起作用?还有其他方法可以做到这一点吗?

答案1

当你指定一个框的大小时自然的使用长度的大小(在 的情况下为 0pt \fill)。

我想你想要类似的东西

\documentclass{beamer}

\usetheme{Ilmenau}
\useoutertheme{smoothbars}
\usecolortheme{seahorse}

\begin{document}

\begin{frame}
    \begin{minipage}{1\linewidth}
        List
        \begin{itemize}
            \item<1-> Point 1
            \item<2-> Point 2
        \end{itemize}
    \end{minipage}
    \only<1>{\vspace*{\fill}\par
        \begin{minipage}[c][.7\textheight][c]{1\textwidth}
            \centering
            centered text
        \end{minipage}
        \par\vspace*{\fill}}
    \only<2>{\vspace*{\fill}\par
        \begin{minipage}[c][.7\textheight][c]{1\textwidth}
            \centering
            \color{green}{\rule{4cm}{3cm}}
        \end{minipage}
        \par\vspace*{\fill}}
\end{frame}

\end{document}

相关内容