我喜欢 Beamer 演示文稿的 Boadilla 布局,但我发现它的enumerate
要点难以辨认,如下图所示(来自Beamer 主题矩阵)。
我如何将环境中项目符号的格式更改enumerate
为更清晰的格式,例如下面所示的默认样式?
是否可以借用不同风格的项目符号格式,全部或部分(itemize
和enumerate
单独)?
答案1
您可以使用
\setbeamertemplate{itemize items}[default]
\setbeamertemplate{enumerate items}[default]
请参阅投影机使用手册了解更多信息。
答案2
\documentclass{beamer}
\usetheme{boadilla}
% Adapted from beamerinnerthemedfault.sty
\setbeamertemplate{itemize item}{\scriptsize\raise1.25pt\hbox{\donotcoloroutermaths$\blacktriangleright$}}
\setbeamertemplate{itemize subitem}{\tiny\raise1.5pt\hbox{\donotcoloroutermaths$\blacktriangleright$}}
\setbeamertemplate{itemize subsubitem}{\tiny\raise1.5pt\hbox{\donotcoloroutermaths$\blacktriangleright$}}
\setbeamertemplate{enumerate item}{\insertenumlabel.}
\setbeamertemplate{enumerate subitem}{\insertenumlabel.\insertsubenumlabel}
\setbeamertemplate{enumerate subsubitem}{\insertenumlabel.\insertsubenumlabel.\insertsubsubenumlabel}
\setbeamertemplate{enumerate mini template}{\insertenumlabel}
\begin{document}
\begin{frame}
\begin{enumerate}
\item{bla}
\begin{enumerate}
\item{blubb}
\begin{enumerate}
\item{foo}
\end{enumerate}
\end{enumerate}
\end{enumerate}
\end{frame}
\end{document}
答案3
您可以使用内部主题构造来实现统一的样式。例如,当我更喜欢对项目、部分和子部分使用方形时,我会使用以下内容。
\useinnertheme{rectangles}
请浏览 beamer 源代码了解各种主题,了解可用的内部主题以及各种主题如何定义某些样式。我觉得这种方式比阅读 Beamer 手册更容易找到我想要自定义的内容。
答案4
Beamer 中的属性抽象
\defbeamertemplate{元素 ID}{选项 ID}[参数索引][默认可选参数][...定义...}
Beamer 的技术:为所有事物赋予标签(或唯一 ID),并根据其标签/ID 应用事物。
根据我的经验,在 Beamer 术语中与 id 对应的词
- 模板
- 别名
枚举列表模板定义
\defbeamertemplate{enumerate item}{circle}{...definition...}
\defbeamertemplate{enumerate subitem}{circle}{...definition...}
\defbeamertemplate{enumerate subsubitem}{circle}{...definition...}
\defbeamertemplate{enumerate mini template}{circle}{...definition...}
为了使格式化更容易,所有这些级别都可以抽象成一个对象,我们可以用它调用父级
\defbeamertemplateparent{enumerate items}{enumerate item,enumerate subitem,enumerate subsubitem,enumerate mini template}{}
也可以通过为整个事物分配别名来再次抽象出各个层,但是对于枚举列表则不能这样做:
\defbeamertemplatealias{itemize item}{triangle}{default}
\defbeamertemplatealias{itemize subitem}{triangle}{default}
\defbeamertemplatealias{itemize subsubitem}{triangle}{default}
枚举默认值的示例
如您所见,没有格式,只有编号。这就是为什么使用“”
\defbeamertemplate*{enumerate item}{default}{\insertenumlabel.}
\defbeamertemplate*{enumerate subitem}{default}{\insertenumlabel.\insertsubenumlabel}
\defbeamertemplate*{enumerate subsubitem}{default}{\insertenumlabel.\insertsubenumlabel.\insertsubsubenumlabel}
\defbeamertemplate*{enumerate mini template}{default}{\insertenumlabel}
使用 fontawesome 作为项目符号的示例
使项目符号在逐项列表中成为向右的 V 形。
\defbeamertemplate{itemize item}{chevron}{\usebeamerfont*{itemize item}\raise1.25pt\hbox{\faAngleRight}}
\setbeamertemplate{items}[chevron]
博阿迪利亚
texmf-dist/tex/latex/beamer/beamerthemeBoadilla.sty
它只是导入了另一个内部主题,该主题控制幻灯片内容的各个方面。它加载了圆角。无需研究圆角的细节,我可以从名称的语义中猜出这就是丑陋的枚举球的原因。