Befehl „Schriftgröße umkehren“ in „setbeamerfont“

Befehl „Schriftgröße umkehren“ in „setbeamerfont“

Ich möchte den Frametitel in einer Beamer-Präsentation anpassen. Ich habe ein Problem mit dem Zeilenabstand, daher verwende ich die size*-Variante.

Die Deklaration lautet size*={<fontsize in pt>}{<baselineskip>}. Ich möchte die Schriftgröße des Frametitels jedoch nicht festlegen, daher muss ich die Schriftgröße (z. B. \huge) in pt konvertieren.

Hier ist ein Beispiel:

\setbeamerfont{frametitle}{%
  size*={%
    \fontsize2pt{\huge}%
  }{1.5ex},%
  shape=\scshape%
}

Gibt es eine einfache Möglichkeit, dies zu tun?

Antwort1

Mit können Sie einen Befehl erstellen, mit dem Sie den Wert in Einheiten der aktuellen Schriftart \f@sizeabrufen können . Diesen Wert können Sie dann für Ihre Definition verwenden. Verwenden Sie , um den Wert der im obligatorischen Argument angegebenen Schriftgröße abzurufen. Diese Länge wird in der Länge gespeichert, die Sie dann im ersten Argument von verwenden können :pt\myfontsizept\myftsizesize*

\documentclass{beamer}

\newlength\myftsize
\makeatletter
\newcommand\myfontsize[1]{%
  \begingroup
  #1
  \global\setlength\myftsize{\f@size pt}%
  \endgroup
}
\makeatother

\myfontsize{\huge}
\setbeamerfont{frametitle}{%
  size*={\myftsize}{1.5ex},
  shape=\scshape
}

\begin{document}

\begin{frame}
\frametitle{Test frame}
test
\end{frame}

\end{document}

Bildbeschreibung hier eingeben

verwandte Informationen