setbeamerfont のフォントサイズを反転するコマンド

setbeamerfont のフォントサイズを反転するコマンド

Beamer プレゼンテーションのフレームタイトルをカスタマイズしたいです。行間隔に問題があるので、size* バージョンを使用します。

宣言は ですsize*={<fontsize in pt>}{<baselineskip>}。ただし、フレームタイトルのフォントサイズを固定したくないので、フォントサイズ (例: \huge) を pt に変換する必要があります。

次に例を示します。

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

これを行う簡単な方法はありますか?

答え1

を使用すると、現在のフォントの単位\f@sizeで値を取得できるコマンドを作成できます。その後、この値を定義に使用できます。 を使用すると、必須引数で宣言されたフォント サイズの値を取得できます。この長さは に格納され、の最初の引数で使用できます。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}

ここに画像の説明を入力してください

関連情報