\setbeamercolor 在外部主题中

\setbeamercolor 在外部主题中

为什么在外部主题中定义一些颜色是有用的?

例子:

\setbeamercolor*{date in head/foot}{parent=palette primary}

它也可以在颜色主题中吗?

答案1

据我所知,beamer 颜色可以在任何地方定义。无论是在颜色主题、外部主题还是在 beamer 文档本身中,从技术角度来看,如果您只定义一次颜色,则无关紧要。如果您多次定义一种颜色,情况会更加复杂,您必须注意是在文档中还是在主题中定义它。

但是:通常将颜色定义主要放在颜色主题中。这有助于您保持主题井然有序,并帮助其他人找到他们想要更改的相关行。


现在来看看为什么你应该使用颜色定义\setbeamercolor*{date in head/foot}{parent=palette primary}而不是仅仅使用\begin{beamercolorbox}{palette primary}。这会使你的代码更加灵活。想象一下你创建了一个主题并将其交给你的同事。他喜欢你的颜色,但有一个例外:他希望日期使用不同的颜色。他可以简单地

  • 在您的代码中搜索一个有意义的短语,如“日期”,然后会找到该行(palette primary搜索不是很直观,并且会给出很多结果)
  • 只需查看通常相对较短且清晰的颜色主题并找到一条简单的线(而\begin{beamercolorbox}通常被更复杂的代码包围)

相关内容