
Quero personalizar o frametitle em uma apresentação do beamer. Tenho um problema com o espaçamento entre linhas, então uso a versão size*.
A declaração é size*={<fontsize in pt>}{<baselineskip>}
. No entanto, não quero corrigir o tamanho da fonte do frametitle, então preciso converter o tamanho da fonte (por exemplo, \huge) para pt.
Aqui está um exemplo:
\setbeamerfont{frametitle}{%
size*={%
\fontsize2pt{\huge}%
}{1.5ex},%
shape=\scshape%
}
Existe uma maneira fácil de fazer isso?
Responder1
Usando \f@size
você pode construir um comando que permite obter o valor em pt
unidades da fonte atual; você pode então usar esse valor para sua definição. Utilize \myfontsize
para obter o pt
valor do tamanho da fonte declarado no argumento obrigatório; esse comprimento é armazenado no \myftsize
qual você pode usar no primeiro argumento de size*
:
\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}