
Ich spiele mit der Anpassung von Beamer-Präsentationen und habe den folgenden Code ausprobiert, um das Erscheinungsbild des Frame-Titels einzurichten:
\setbeamertemplate{frametitle}{
\begin{beamercolorbox}[left, wd = \paperwidth, ht = 1em]{palette frame title}
\usebeamerfont{frametitle}
\textbf{\insertframetitle}
\end{beamercolorbox}
\begin{beamercolorbox}[wd = \paperwidth, ht = .15em]{palette frame title}
\rule{\paperwidth}{.15em}
\end{beamercolorbox}
}
Das Ergebnis ist das Folgende (ich habe es bg = yellow
in der Palette eingestellt, beamercolorbox
um ihre Abmessungen zu visualisieren):
Ich wäre dankbar, wenn mir jemand erklären könnte, woher die beiden Leerzeichen kommen: das über dem ersten beamercolorbox
und das zwischen den beiden Kästchen. Mir ist aufgefallen, dass sich die Größe dieser Leerzeichen zu ändern scheint, wenn man die Höhe der Kästchen ändert. Das sieht für mich seltsam aus und erschwert die genaue Lokalisierung.
Antwort1
Sie können sich die Standard-Beamer-Designs ansehen, um zu sehen, wie sie den Interlineskip basierend auf dem Vorhandensein einer Hintergrundfarbe entfernen, siehe z. B.https://github.com/josephwright/beamer/blob/main/base/themes/outer/beamerouterthemedefault.sty#L164
\documentclass{beamer}
\setbeamertemplate{frametitle}{%
\ifbeamercolorempty[bg]{frametitle}{}{\nointerlineskip}%
\begin{beamercolorbox}[left,wd=\paperwidth,ht=2.5ex,dp=1ex]{frametitle}
\usebeamerfont{frametitle}%
\strut\insertframetitle
\end{beamercolorbox}%
\ifbeamercolorempty[bg]{lower separation line head}{}{\nointerlineskip}%
\begin{beamercolorbox}[colsep=1.5pt,wd=\paperwidth]{lower separation line head}
\end{beamercolorbox}%
}
\setbeamercolor{frametitle}{bg=yellow,fg=blue}
\setbeamerfont{frametitle}{series=\bfseries}
\setbeamercolor{lower separation line head}{bg=blue}
\begin{document}
\begin{frame}
\frametitle{titgle}
abc
\end{frame}
\end{document}