使用 beamer 中的 \xcancel 宏进行行跳转

使用 beamer 中的 \xcancel 宏进行行跳转

我的问题与此有关:Latex - Beamer:仅在指定的幻灯片上应用 \cancel 命令。我尝试将 Loop Space 的答案应用于这个问题,但当 xcancel 出现时,我得到了一个跳行。有人可以帮忙吗?这是一个 MWE:

\documentclass{beamer}
\usepackage[makeroom,thicklines]{cancel}
\renewcommand{\CancelColor}{\color{red}}
\newcommand<>{\xxcancel}[1]{\alt#2{\xcancel{#1}\vphantom{#1}}{#1}}%uncover the xcancel command
\begin{document}
\begin{frame}{Test Beamer xxcancel}
$\tilde{\chi}^{-1}\left(\mathbf{q},\omega\right)={\chi^{-1}\left(\mathbf{q},\omega\right)}
{- \xxcancel<2->{{} \dfrac{\lambda^{2}\cdot q^{2}}{C_{s,0}\cdot q^{2}+\omega^{2}}}}$
\end{frame}
\end{document}

答案1

\xcancel增加了一些额外的空间,所以我们需要确保两个版本占用相同的空间。要处理水平空间,最简单的解决方法是删除该makeroom选项。要处理垂直空间,我们\vphantom在未取消的部分添加一个。(事实上,我完全不确定为什么\vphantom取消的部分会有,因为取消的版本必然会比未取消的版本占用更多的垂直空间。)

可能还有更好的解决方案,但与此同时,上述方法似乎有效:

\documentclass{beamer}
%\url{http://tex.stackexchange.com/q/362077/86}
\usepackage[thicklines]{cancel}
\renewcommand{\CancelColor}{\color{red}}
\newcommand<>{\xxcancel}[1]{\alt#2{\xcancel{#1}}{\vphantom{\xcancel{#1}}#1}}%uncover the xcancel command
\begin{document}
\begin{frame}{Test Beamer xxcancel}
$\tilde{\chi}^{-1}\left(\mathbf{q},\omega\right)={\chi^{-1}\left(\mathbf{q},\omega\right)}
{- \xxcancel<2->{{} \dfrac{\lambda^{2}\cdot q^{2}}{C_{s,0}\cdot q^{2}+\omega^{2}}}}$
\end{frame}
\end{document}

相关内容