将 beamer-slide 的一部分与顶部对齐

将 beamer-slide 的一部分与顶部对齐

我希望投影仪幻灯片的某些部分与幻灯片顶部对齐。其余部分仍应自动与中间对齐。

梅威瑟:

\documentclass{beamer}

\usepackage{tcolorbox}

\begin{document}

\begin{frame}{Title}
\begin{tcolorbox}
align to top
\end{tcolorbox}

align to middle
\end{frame}

\end{document}

投影仪中帧内容的不同对齐方式解决方案。(如果这是一个好的/正确的解决方案)。但是,它能够定义tcolorbox或一个新的环境,以便[t]将选项添加到框架中并在\vfill环境之后(这似乎是最简单的部分)

答案1

您可以让tcolorbox骑行成为框架标题的组成部分:

\documentclass{beamer}

\usepackage{tcolorbox}

\begin{document}

{
\addtobeamertemplate{frametitle}{}{%
    \begin{tcolorbox}
    align to top
    \end{tcolorbox}
}
\begin{frame}{Title}
align to middle
\end{frame}
}

{
\addtobeamertemplate{frametitle}{}{%
    \begin{tcolorbox}
    align to top
    \end{tcolorbox}
}
\begin{frame}{\mbox{}}
align to middle
\end{frame}
}

\end{document}

缺点:你必须在框架标题中有一些非空的内容。最坏的情况是,如果框架不应该有标题,那么你就可以使用一些不可见的内容。

答案2

编辑:

阅读 萨姆卡特答案给了我以下想法:

\documentclass{beamer}
\usepackage{tcolorbox}

\newcommand\mytcolorbox[1]{%
    \framesubtitle{\medskip%
        \centerline{\begin{tcolorbox}[width=\textwidth]
                    #1
                    \end{tcolorbox}}}
                        }

\begin{document}
\begin{frame}{Title}
\mytcolorbox{align to top}
align to middle
\end{frame}

\begin{frame}{Title}
align to middle
\end{frame}

\end{document}

优点:工作简单:-)

缺点:yin 同时你不能使用\framesubtitle,它将被覆盖\mytcolorbox

在此处输入图片描述

答案3

以下新命令\totop应将其内容添加到框架顶部,而不会干扰全局框架居中。唯一的缺点是选择正确的值,以便您可以根据raisebox该内容进行选择,我.35\textheight在示例中选择了该值。

\documentclass{beamer}
\usepackage{lmodern,tcolorbox}

\newcommand{\totop}[1]{\vbox to 0pt{\raisebox{.35\textheight}[\height][0pt]{#1}}\vspace{-\baselineskip}}

\begin{document}    
\begin{frame}{Title}

\totop{%
\begin{tcolorbox}
    align to top
\end{tcolorbox}
}

align to middle

\end{frame}    
\end{document}

在此处输入图片描述

相关内容