如何更改自定义 Beamer .sty 主题文件中块的颜色?

如何更改自定义 Beamer .sty 主题文件中块的颜色?

我正在创建自定义 Beamer 主题。我知道如何更改 itemize 或 enumerate 块中某些元素的字体颜色,但我似乎无法弄清楚如何指定块中的颜色,如下所示。例如:

\begin{block}{Change the font color here}
    some text
    some more text
\end{block}

我想改变{Change the font color here}主题区域的颜色。我尝试在 .sty 文件中使用此代码将颜色更改为黑色:

\setbeamercolor{block}{fg=black}

我究竟做错了什么?

答案1

您可以使用模板修改颜色block title

\documentclass{beamer}

\setbeamercolor{block title}{bg=red!30,fg=black}

\begin{document}

\begin{frame}
\begin{block}{Change the font color here}
    some text
    some more text
\end{block}
\end{frame}

\end{document}

在此处输入图片描述

答案2

我想我完全误解了这个问题,但无论如何,这是我对(我认为的)这个问题的回答。

您可以像这样定义另一个环境:

\newenvironment{variableblock}[3]{%
  \setbeamercolor{block body}{#2}
  \setbeamercolor{block title}{#3}
  \begin{block}{#1}}{\end{block}}

然后您可以将块的颜色设置为可选参数:

\begin{variableblock}{Title}{bg=blue,fg=white}{bg=green,fg=red}
  Stuff
\end{variableblock}

这样,正文的背景就变成蓝色,标题块的背景就变成绿色。此外,正文文本变成白色,标题块文本变成红色。

可变颜色的块

答案3

您还可以将\setbeamercolor语句包装在{}组中。更改仅是本地的

{
\setbeamercolor{block}{bg=red, fg=white}
\begin{block}{}
...
\end{block}
}

对于临时使用,比如说突出显示某些内容,你也可以使用

\only<1,3,7>{
\setbeamercolor{block}{bg=red, fg=white}
    }

相关内容