我正在尝试自定义beamer
主题。在脚注中,作者、标题、日期等信息分为几部分beamercolorbox
。
\hbox{%
\begin{beamercolorbox}[wd=.70\paperwidth,ht=7.25ex,left,leftskip=2ex]{title in head/foot}%
\usebeamerfont{title in head/foot}\insertshorttitle{} - \insertshortauthor
\end{beamercolorbox}%
\begin{beamercolorbox}[wd=.20\paperwidth,ht=7.25ex,center]{date in head/foot}%
\usebeamerfont{date in head/foot}\insertshortdate{}
\end{beamercolorbox}
\begin{beamercolorbox}[wd=.10\paperwidth,ht=7.25ex,right,rightskip=2ex]{date in head/foot}%
\insertframenumber{} / \inserttotalframenumber
\end{beamercolorbox}}%
我可以轻松管理框的高度和宽度,但文本仍然完全位于框的底部。我希望此文本垂直对齐。
我怎样才能做到这一点?
答案1
您可以使用以下方法将框的深度设置为适当的值dp=<length>
:
\documentclass{beamer}
\usetheme{Warsaw}
\setbeamertemplate{footline}{%
\hbox{%
\begin{beamercolorbox}[wd=.70\paperwidth,ht=4.25ex,dp=3ex,left,leftskip=2ex]{title in head/foot}%
\usebeamerfont{title in head/foot}\insertshorttitle{} - \insertshortauthor
\end{beamercolorbox}%
\begin{beamercolorbox}[wd=.20\paperwidth,ht=4.25ex,dp=3ex,center]{date in head/foot}%
\usebeamerfont{date in head/foot}\insertshortdate{}
\end{beamercolorbox}%
\begin{beamercolorbox}[wd=.10\paperwidth,ht=4.25ex,dp=3ex,right,rightskip=2ex]{date in head/foot}%
\insertframenumber{} / \inserttotalframenumber
\end{beamercolorbox}}%
}
\title{The Title}
\author{The Author}
\begin{document}
\begin{frame}
test
\end{frame}
\end{document}
请注意,第二个末尾有一个虚假的空格beamercolorbox
;我在示例代码中删除了该空格。
答案2
将a 的内容beamercolorbox
排版到框中。使用ht=<height>
参数,此框的高度设置为<height>
,但内容保留在底部。您可以改用 参数sep=<dimension>
,这会在框的每一侧添加额外的内容,从而使内容居中。但是,如果您需要设置固定高度(这对于 footline 来说非常合理),您可以在 内使用额外的\vbox
and ,如下所示\vfil
beamercolorbox
在这个答案中描述:
\documentclass{beamer}
\usetheme{Ilmenau}
\setbeamertemplate{footline}{%
\hbox{%
\begin{beamercolorbox}[wd=.70\paperwidth,ht=7.25ex,left,leftskip=2ex]{title in head/foot}%
\vbox to7.25ex{\vfil\hbox{\usebeamerfont{title in head/foot}\insertshorttitle{} - \insertshortauthor}\vfil}%
\end{beamercolorbox}%
\begin{beamercolorbox}[wd=.20\paperwidth,ht=7.25ex,center]{date in head/foot}%
\vbox to7.25ex{\vfil\hbox{\usebeamerfont{date in head/foot}\insertshortdate{}}\vfil}%
\end{beamercolorbox}%
\begin{beamercolorbox}[wd=.10\paperwidth,ht=7.25ex,right,rightskip=2ex]{date in head/foot}%
\vbox to7.25ex{\vfil\hbox{\insertframenumber{} / \inserttotalframenumber}\vfil}%
\end{beamercolorbox}}%
}
\author{Author}
\title{Title}
\begin{document}
\frame{}
\end{document}