Se eu fizer o seguinte, A e B ficarão vermelhos.
\alert{A} + \alert{B}
Posso transformar apenas B em azul?
Se houver um comando existente separado?
Ou é possível fazer outro comando alertblue
e escrever
\alert{A} + \alertblue{B}
?
Responder1
Você pode definir a cor do alerta com \setbeamercolor{alerted text}{fg=<color>}
. Você pode definir um \alertblue
comando da seguinte maneira.
\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}
Aqui, <>
in \newcommand<>...
garante que o comando entenda as especificações de sobreposição e \begingroup...\endgroup
garante que a mudança de cor seja apenas local, ou seja, o próximo ordinário \alert
usará a cor padrão novamente.
Uma versão possivelmente mais versátil é
\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}
ou
\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}
Responder2
Uma opção mais curta é o seguinte código:
{\color{blue}TEXT YOU WANT IN BLUE}