如果你运行这个简单的代码,你会看到一个溢出的水平盒子。我认为原因是beamercolorbox
标题中的\paperwidth
很大。
\documentclass{beamer}
\usetheme{metropolis}
\setbeamersize{sidebar width left=.83cm}
\begin{document}
\begin{frame}{Frame title}
\end{frame}
\end{document}
有没有办法将标题扩展到侧边栏并避免过满?我想要做的是将所有文本(普通文本和标题中的文本)移动 0.83 厘米,保持背景设计固定(例如,设置文本边距不起作用,因为它会移动beamercolorbox
标题中的文本)。
答案1
我会设置text margin left
然后修补frametitle
模板以更改leftskip
那里:
\documentclass{beamer}
\usetheme{moloch}% modern fork of the metropolis theme
\setbeamersize{text margin left=1.86cm}
\makeatletter
\setbeamertemplate{frametitle}{%
\nointerlineskip%
\begin{beamercolorbox}[%
wd=\paperwidth,%
sep=0pt,%
leftskip=\dimexpr\moloch@frametitle@padding+0.86cm,%
rightskip=\moloch@frametitle@padding,%
]{frametitle}%
\moloch@frametitlestrut@start%
\insertframetitle%
\nolinebreak%
\moloch@frametitlestrut@end%
\end{beamercolorbox}%
}
\makeatother
\begin{document}
\begin{frame}{Frame title}
text
\end{frame}
\end{document}