更改默认枚举的颜色

更改默认枚举的颜色

令我惊讶的是,我很难找到红色主题,并且使用了beamer主题矩阵找到CambridgeUS。我已更改了项目符号以匹配,但似乎无法使枚举变为红色。我尝试了\setbeamertemplate{items}[red]手册beamer,但\setbeamertemplate{enumerate items}[default, red]还是不行。似乎可以在每个枚举环境中完成,例如这个相关问题,但是有没有办法让我在序言中只做一次而不定义自定义命令?我以为这种事情很常见。目前我的序言是

\usetheme{CambridgeUS}
\setbeamercolor{item projected}{bg=red}
\setbeamertemplate{enumerate items}[default]
\setbeamertemplate{navigation symbols}{}
\setbeamercovered{transparent}

或者,如果有另一个使用默认标记并且为红色的枚举项目模板,那么它也可以起作用。

编辑:

我能够用 来改变顶层数字的颜色\setbeamercolor{enumerate item}{fg=red},但是当我尝试 时,它们并不像我期望的那样全部继承\setbeamercolor{enumerate items}{fg=red}

再次编辑:

看起来使用后\documentclass[red]{beamer}它们会变成红色(不是很好的红色,但还是偏红)。我读到过一些文章说这样做已经过时了,所以请告诉我是否有我应该使用的更新版本。

答案1

您可以使用local structure来引起颜色继承:

\documentclass{beamer}
\usetheme{CambridgeUS}
\setbeamercolor{item projected}{bg=darkred}
\setbeamertemplate{enumerate items}[default]
\setbeamertemplate{navigation symbols}{}
\setbeamercovered{transparent}
\setbeamercolor{block title}{fg=darkred}
\setbeamercolor{local structure}{fg=darkred}

\begin{document}

\begin{frame}
\begin{block}{A block}
\begin{enumerate}
  \item First item.
  \begin{itemize}
    \item First subitem.
    \begin{enumerate}
      \item First subsubitem.
    \end{enumerate}
  \end{itemize}
\end{enumerate}
\end{block}
\end{frame}

\end{document}

代码输出

答案2

同时更改enumerate subitemenumerate subsubitem颜色:

\documentclass{beamer}
\usetheme{CambridgeUS}
\setbeamercolor{item projected}{bg=red}
\setbeamertemplate{enumerate items}[default]
\setbeamertemplate{navigation symbols}{}
\setbeamercovered{transparent}

\setbeamercolor*{enumerate item}{fg=red}
\setbeamercolor*{enumerate subitem}{fg=red}
\setbeamercolor*{enumerate subsubitem}{fg=red}

\begin{document}

\begin{frame}
\begin{enumerate}
  \item First item.
  \begin{enumerate}
    \item First subitem.
    \begin{enumerate}
      \item First subsubitem.
    \end{enumerate}
  \end{enumerate}
\end{enumerate}
\end{frame}

\end{document}

如果您想使用与 CambridgeUS 相同的颜色,您可以使用darkred(主题定义)代替red

在此处输入图片描述

相关内容