我正在尝试定义数学文本是一些预定义的颜色,如我的序言中所述:
\setbeamercolor{math text}{pmsGreen}
\everymath{\color{pmsGreen}}
\everydisplay{\relax \ifx \\\@eqncr \else \color{pmsGreen}\fi }
注意:我不明白最后一行的意思,只是在某个地方找到的。但问题是,当 mathmode 处于 pmsGreen 状态时,eqnarray 中的文本仍然是默认颜色。我该如何处理这个问题?
编辑:一个最小的例子:
\documentclass[10pt,a4paper,xcolor=dvipsnames,xcolor=table]{beamer}
\definecolor{pmsGreen}{RGB}{0,156,121}
\mode<presentation>
{
\usetheme{Darmstadt}
\usetheme{Warsaw}
\setbeamercovered{transparent}
}
\setbeamercolor{math text}{pmsGreen}
\everymath{\color{pmsGreen}}
\everydisplay{\relax \ifx \\\@eqncr \else \color{pmsGreen}\fi }
\DeclareMathOperator{\Tr}{Tr}
\DeclareMathOperator{\im}{Im}
\begin{document}
$1=2$
\begin{eqnarray}
1=2\\
2=3
\end{eqnarray}
\end{document}
注意:我见过示例代码也显示输出的例子,不知道如何做到这一点。
答案1
引用手册:
Beamer-彩色数学文本
此颜色是内联数学文本和显示数学文本的父级。默认情况下为空。查看这些颜色了解详情。
Beamer-Color 数学文本显示
颜色父母:数学文本
类似于内联的数学文本,仅适用于所谓的“显示”数学文本。这是 [ 和 ] 之间或 $$ 和 $$ 之间或等式或对齐环境中的数学文本。此颜色的设置有些脆弱,使用风险自负。背景目前被忽略。
因此,你必须利用:
\setbeamercolor{math text}{fg=pmsGreen}
\setbeamercolor{math text displayed}{fg=pmsGreen}
还要有align
彩色的方程式(避免使用 eqnarray,参见eqnarray 与 align)。
一个例子:
\documentclass[10pt,a4paper,xcolor=dvipsnames,xcolor=table]{beamer}
\definecolor{pmsGreen}{RGB}{0,156,121}
\usepackage{lmodern}
\mode<presentation>
{
\usetheme{Darmstadt}
\usetheme{Warsaw}
\setbeamercovered{transparent}
\setbeamercolor{math text}{fg=pmsGreen}
\setbeamercolor{math text displayed}{fg=pmsGreen}
}
\DeclareMathOperator{\Tr}{Tr}
\DeclareMathOperator{\im}{Im}
\begin{document}
\begin{frame}{Title}
$1=2$
\begin{quotation}
1=2
\end{quotation}
\begin{equation}
x+y=100
\end{equation}
\begin{align}
1=2 \\
2=3
\end{align}
\begin{itemize}
\item \only<2>{Contains essentially \textit{all} physical information of a given system} $A(\vec{r},\vec{r}^{'})=-\dfrac{1}{\pi}\im\Tr\int^{\mu}_{\curvearrowright} dz~\hat{A}~G(\vec{r},\vec{r}^{'};z)$
\end{itemize}
\end{frame}
\end{document}
结果: