如果我執行以下操作,那麼 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}