如何为下一帧保留响应文本的精确大小(当我结合使用 siunitx 和 animateinline 时)。
\documentclass{beamer}
\usepackage{amsmath,amsthm,amsfonts,amssymb}
\usepackage[brazil]{babel}
\usepackage{siunitx}
\sisetup{locale = FR}
\usepackage{animate}
\begin{document}
\begin{frame}
\frametitle{Exemplos de Conversão}
\large
Vamos realizar as seguintes conversões: \vspace{0.2cm}
\begin{animateinline}[controls,buttonsize=1em,step]{2}
$\SI{100}{\deca\meter} \longrightarrow \parbox[c]{3cm}{\rule{2cm}{\fill} \SI{}{\centi\meter}} $
\newframe
$\SI{100}{\deca\meter} \longrightarrow \parbox[c]{3cm}{ \SI{100000}{\centi\meter}}$
\end{animateinline}
\end{frame}
\end{document}
答案1
欢迎!您可以使用eqparbox
它。我添加了
\eqmakebox[A][r]{\SI{}{\centi\meter}}
和
\eqmakebox[A][r]{\SI{100000}{\centi\meter}}
其中A
是 ID,即所有标记的框A
都具有相同的宽度,r
是对齐方式。您需要编译两次以将宽度写入辅助文件中,并在第二次运行中使用最大值。
\documentclass{beamer}
\usepackage{amsmath,amsthm,amsfonts,amssymb}
\usepackage[brazil]{babel}
\usepackage{siunitx}
\sisetup{locale = FR}
\usepackage{animate}
\usepackage{eqparbox}
\begin{document}
\begin{frame}
\frametitle{Exemplos de Convers\~ao}
\large
Vamos realizar as seguintes convers\~oes: \vspace{0.2cm}
\begin{animateinline}[controls,buttonsize=1em,step]{2}
$\SI{100}{\deca\meter} \longrightarrow \eqmakebox[A][r]{\SI{}{\centi\meter}} $
\newframe
$\SI{100}{\deca\meter} \longrightarrow \eqmakebox[A][r]{\SI{100000}{\centi\meter}}$
\end{animateinline}
\end{frame}
\end{document}