アラートやその他のコマンドを使用して 1 つの方程式内で複数の色を使用する

アラートやその他のコマンドを使用して 1 つの方程式内で複数の色を使用する

次のようにすると、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}

関連情報