Consulte a proporção da opção de classe do documento do beamer em um arquivo .sty

Consulte a proporção da opção de classe do documento do beamer em um arquivo .sty

Estou escrevendo meu próprio estilo de projetor de látex. Quero usar gráficos de fundo diferentes dependendo da proporção escolhida na documentclass do arquivo principal, como \documentclass[12pt, aspectratio=169]{beamer}

Então, como posso acessar o valor da proporção no meu arquivo .sty?

Responder1

Uma maneira poderia ser usar a \ifdimcomp{⟨dimen expression⟩}{⟨relation⟩}{⟨dimen expression⟩}{⟨true⟩}{⟨false⟩}macro para testar diferentes larguras de papel (e altura no caso de 169e 1610):

\documentclass[
    aspectratio=169
%   aspectratio=43
    ]{beamer}
    
\begin{document}

\makeatletter
\ifdimcomp{\beamer@paperwidth}{=}{12.80cm}{43}{}
\ifdimcomp{\beamer@paperwidth}{=}{14.85cm}{141}{}
\ifdimcomp{\beamer@paperwidth}{=}{13.50cm}{32}{}
\ifdimcomp{\beamer@paperwidth}{=}{12.50cm}{54}{}
\ifdimcomp{\beamer@paperwidth}{=}{14.00cm}{149}{}
\ifdimcomp{\beamer@paperwidth}{=}{16.00cm}{
    \ifdimcomp{\beamer@paperheight}{=}{10.00cm}{1610}{}
    \ifdimcomp{\beamer@paperheight}{=}{9.00cm}{169}{}
}{}
\makeatother

\end{document}

Com oversão atual de desenvolvimento do beamer(que deve estar incluído no beamer v3.70 ou mais recente), agora pode-se simplesmente usar a \insertaspectratiomacro:

\documentclass[
    aspectratio=169
%   aspectratio=43
    ]{beamer}

\begin{document}

\begin{frame}
\insertaspectratio
\end{frame}

\end{document}

informação relacionada