投影机中的帧标题垂直对齐不一致

投影机中的帧标题垂直对齐不一致

我正在尝试使用 beamer 微调幻灯片模板。我遇到的问题是,当标题需​​要两行时,会出现不一致的行为。添加第二行会将标题和徽标的位置向上移动(在下面的示例中使用规则进行模拟)。

我怎样才能改变模板以获得与标题中只有 1 或 2 行相同的一致行为?

\documentclass{beamer}

\setbeamertemplate{frametitle}{}
\providecommand\insertframetitle*{}
\setbeamertemplate{headline}{
  \begin{beamercolorbox}[sep=0.3cm,ht=1.5cm,wd=\paperwidth]{headline} 
\parbox[b]{.8\paperwidth}{\bf\strut\Large\insertframetitle\strut}\hfill \rule{1.5cm}{.7cm} 
  \end{beamercolorbox}
}

\begin{document}



\begin{frame}{A very very long title that does not fit in one line alone}
\end{frame}

\begin{frame}{A shorter title}
\end{frame}

\end{document}

答案1

使用的解决方案adjustbox

\documentclass{beamer}
\usepackage{adjustbox}

\setbeamertemplate{frametitle}{}
\providecommand\insertframetitle*{}
\setbeamertemplate{headline}{
  \begin{beamercolorbox}[sep=0.3cm,ht=1.5cm,wd=\paperwidth]{headline} 
  \adjustbox{minipage=[r][0.25cm][t]{0.8\paperwidth}}{\bfseries{\Large\insertframetitle}} \hfill \adjustbox{valign=t}{\rule{1.5cm}{.7cm}}
  \end{beamercolorbox}
}

\begin{document}



\begin{frame}{A very very long title that does not fit in one line alone}
\end{frame}

\begin{frame}{A shorter title}
\end{frame}

\end{document}

在此处输入图片描述

您可以使用 来决定valign=将图像放置在标题边界框的中间 (m)、顶部 (t) 还是底部 (b)。如果在 中更改[t]为 ,您还可以指定将短标题设置在顶部还是底部。[b]minipage

通过export该包的选项,您可以直接与adjustbox环境一起adjustbox使用。\includegraphics[valign=m]{}

平均能量损失

\documentclass{beamer}
\usepackage[export]{adjustbox}
\usepackage{graphicx}

\setbeamertemplate{frametitle}{}
\providecommand\insertframetitle*{}
\setbeamertemplate{headline}{
  \begin{beamercolorbox}[sep=0.3cm,ht=1.5cm,wd=\paperwidth]{headline} 
  \adjustbox{minipage=[r][0.2cm][t]{0.8\paperwidth}}{\bfseries{\Large\insertframetitle}} \hfill \includegraphics[width=1.5cm, valign=t]{example-image-a}
  \end{beamercolorbox}
}

\begin{document}



\begin{frame}{A very very long title that does not fit in one line alone}
\end{frame}

\begin{frame}{A shorter title}
\end{frame}

\end{document}

结果

在此处输入图片描述

答案2

您可以添加[b]\parbox。我\strut从解决方案中删除了 。此外,最好使用\textbf而不是\bf

使用以下代码,您将能够将徽标放在每张幻灯片的同一位置,而且标题不会太靠近(或超出)边距。

\documentclass{beamer}

\setbeamertemplate{frametitle}{}
\providecommand\insertframetitle*{}
\setbeamertemplate{headline}{
  \begin{beamercolorbox}[sep=0.3cm,ht=1.5cm,wd=\paperwidth]{headline} 
\parbox[b]{.8\paperwidth}{\Large\textbf{\insertframetitle}}\hfill \rule{1.5cm}{.7cm} 
  \end{beamercolorbox}
}

\begin{document}



\begin{frame}{A very very long title that does not fit in one line alone}
\end{frame}

\begin{frame}{A shorter title}
\end{frame}

\end{document}

在此处输入图片描述

相关内容