使用警报和其他命令在一个方程内使用多种颜色

使用警报和其他命令在一个方程内使用多种颜色

如果我执行以下操作,则 A 和 B 都会变成红色。

\alert{A} + \alert{B}

我可以只将 B 变成蓝色吗?

是否有单独现有的命令?

或者,是否可以发出另一个命令alertblue并写入

\alert{A} + \alertblue{B}

答案1

您可以使用 设置警报颜色。您可以按如下方式\setbeamercolor{alerted text}{fg=<color>}定义命令。\alertblue

\documentclass{beamer}
\newcommand<>{\alertblue}[1]{\begingroup%
\setbeamercolor{alerted text}{fg=blue}\alert{#1}\endgroup}
\begin{document}
\begin{frame}[t]
\frametitle{Change alert color}
$\alert<1>{A}\pause + \alertblue<2>{B}\pause=\alert<3>{C}$
\end{frame}
\end{document}

在此处输入图片描述

这里,<>确保\newcommand<>...命令理解覆盖规范,并\begingroup...\endgroup确保颜色变化只是局部的,即下一个普通颜色\alert将再次使用默认颜色。

可以说,更通用的版本是

\documentclass{beamer}
\newcommand<>{\ColorAlert}[2][blue]{\begingroup%
\setbeamercolor{alerted text}{fg=#1}\alert{#2}\endgroup}
\begin{document}
\begin{frame}[t]
\frametitle{Change alert color}
$y$ stays blue
\[x+\ColorAlert{y}=z\]
I learned the \texttt{.(1)} trick from samcarter. 
\[\alert<.(1)>{A}\pause +
\ColorAlert<.(1)>{B}\pause=\ColorAlert[orange]<.(1)>{C}\]
\end{frame}
\end{document}

在此处输入图片描述

或者

\documentclass{beamer}
\newcommand<>{\ColorAlert}[2][blue]{\begingroup%
\setbeamercolor{alerted text}{fg=#1}\alert#3{#2}\endgroup}
\begin{document}
\begin{frame}[t]
\frametitle{Change alert color}
$y$ stays blue
\[x+\ColorAlert{y}=z\]
I learned the \texttt{.(1)} trick from samcarter. 
\[\alert<.(1)>{A}\pause +
\ColorAlert<.(1)>{B}\pause=\ColorAlert[orange]<.(1)>{C}\]
\end{frame}
\end{document}

在此处输入图片描述

答案2

更短的选项是以下代码:

{\color{blue}TEXT YOU WANT IN BLUE}

相关内容