我曾经\setbeamercolor{math text}{fg=blue}
将数学模式中的所有文本都变成蓝色。但是,块标题中也有数学,我希望公式的颜色与块标题相同,而不是蓝色。
\documentclass{beamer}
\usetheme{Warsaw}
\setbeamercolor{math text}{fg=blue}
\begin{document}
\begin{frame}
\begin{block}{A title with math text $f(x)=y$}
Block body with math text $f(x)=y$.
\end{block}
\end{frame}
\end{document}
它看起来像这样:
我希望它看起来像这样:
我发现了一个解决方案\donotcoloroutermaths
通过设置可以修改框架标题中的数学文本颜色\addtobeamertemplate{frametitle}{\donotcoloroutermaths}
。但简化更改frametitle
会blocktitle
导致错误。
答案1
您可以block begin
像这样重新定义模板:
\documentclass{beamer}
\usetheme{Warsaw}
\setbeamercolor{math text}{fg=blue}
\setbeamertemplate{block begin}{%
\par\vskip\medskipamount%
\begin{beamerboxesrounded}[upper=block title,lower=block body,shadow=true]%
{\raggedright\usebeamerfont*{block title}\donotcoloroutermaths\insertblocktitle}%
\raggedright%
\usebeamerfont{block body}%
}
\begin{document}
\begin{frame}
\begin{block}{A title with math text $f(x)=y$}
Block body with math text $f(x)=y$.
\end{block}
\end{frame}
\end{document}