使用 \only 更改文本颜色会导致间距问题

使用 \only 更改文本颜色会导致间距问题

您好,提前感谢您的帮助!

我正在比较以下两个命令:

  1. This is a \only<1>{test}\only<2>{\textcolor{red}{test}}.

  2. $\only<1>{\max_{(x,y)}}\only<2>{\textcolor{red}{\max_{(x,y)}}}$

第一个工作正常,并使文本变成红色。

第二个也使文本变成红色。但是,它会导致间距发生轻微偏移。我不知道是什么导致了这种偏移,以前有其他人遇到过这个问题吗?

是数学环境的问题吗?

答案1

请始终发布完整的文档而不仅仅是片段。

数学模式中导致数学原子所需的 whatsit 节点\only会影响间距。最简单的方法是在两种情况下{}在前面放置一个空的数学原子。\max

\documentclass{beamer}
\begin{document}

\begin{frame}{}

    This is a \only<1>{test}\only<2>{\textcolor{red}{test}}.

    $\only<1>{{}\max_{(x,y)}}\only<2>{\textcolor{red}{{}\max_{(x,y)}}}$

\end{frame}

\end{document}

答案2

另一种选择是对每个表达式分别使用数学模式(这似乎(至少对我来说)在语法上更正确):

\documentclass{beamer}
\begin{document}

\begin{frame}

This is a \only<1>{test}\only<2>{\textcolor{red}{test}}.

\only<1>{$\max_{(x,y)}$}\only<2>{\textcolor{red}{$\max_{(x,y)}$}}

\end{frame}

\end{document}

相关内容