在 Beamer 中重新着色方程中的数学

在 Beamer 中重新着色方程中的数学

我有一个演示文稿,其中数学颜色改为蓝色:

\setbeamercolor{math text}{fg=black!15!blue}

一切看起来都很好,直到我想重新着色方程的一部分:

\begin{align*}
   x\ y\ z &: A  \color{red}\longleftarrow \text{Assumptions}\\
   \hline
   x &\in \color{red}\underbrace{[x,y,z]}_{\text{Goal}}
\end{align*}

然后一切就变得疯狂了:左箭头的一半印上了蓝色,并且括号内也完全印上了蓝色。

任何帮助将不胜感激。

完整代码:

\documentclass{beamer}
\setbeamercolor{math text}{fg=black!15!blue}

\begin{document}
\begin{frame}
   \begin{align*}
      x\ y\ z &: A  \color{red}\longleftarrow \text{Assumptions}\\
      \hline
      x &\in \color{red}\underbrace{[x,y,z]}_{\text{Goal}}
   \end{align*}
\end{frame}
\end{document}

答案1

在此处输入图片描述

\documentclass{beamer}
\setbeamercolor{math text}{fg=black!15!blue}

\newcommand\beamermathcolor[1]{\color{#1}\setbeamercolor{math text}{fg=#1}}
\begin{document}
\begin{frame}
   \begin{align*}
      x\ y\ z &: A  \beamermathcolor{red}\longleftarrow \text{Assumptions}\\
      \hline
      x &\in \beamermathcolor{red}\underbrace{[x,y,z]}_{\text{Goal}}
   \end{align*}
\end{frame}
\end{document}

答案2

作为替代方案大卫的回答,你可以\everymath在这里重置

\documentclass{beamer}
\setbeamercolor{math text}{fg=black!15!blue}

\begin{document}
\makeatletter
\begin{frame}
   \begin{align*}
     \global\everymath{}
      x\ y\ z &: A \color{red}\longleftarrow \text{Assumptions}\\
      \hline
      x &\in \color{red}\underbrace{[x,y,z]}_{\text{Goal}}
   \end{align*}
  \global\everymath{\beamer@setmathcolor}
\end{frame}
\makeatother
\end{document}

奇怪的事情发生是因为应用了数学颜色通过 \everymath,如果您跟踪代码,您会发现“文本”的某些部分使用了数学模式。例如,\longleftarrow由各个部分组成,有些部分采用数学模式,有些则不采用。

相关内容