我希望能够为我的 Beamer 幻灯片内容添加“标题”。标题指的是稍大一点的文本,它会自动分行,并为周围的文本添加一些边距。基本上,这\section
与撰写文章时的命令完全一样。
到目前为止我已经使用block
类似这样的环境完成了这项工作
\begin{block}{The heading}
The content goes here.
\end{block}
它适用于我以前的主题,因为块背景与幻灯片背景相同。但在我的新主题中,我想使用通常的彩色框,因此需要其他方法。
我尝试实现一个新的headingblock
环境,它基本上是一个具有新颜色的块环境:
\newenvironment{headingblock}[1]{%
\setbeamercolor{block body}{bg=white, fg=black}
\setbeamercolor{block title}{bg=white, fg=liu_blue}
\begin{block}{#1}}{\end{block}}
问题是,块内的其他所有内容都会受到调用的影响\setbeamercolor
,这意味着我无法在标题块内再添加一个块。而且感觉有点黑客化。
实现这一目标的最佳方法是什么?
编辑 为了更加清楚,我不是在寻找框架标题,而是在寻找框架内的副标题。例如:
\begin{frame}
\frametitle{The slide}
\myheading{The first heading}
Some text and stuff that goes with the first heading
\myheading{Second heading}
More stuff goes here.
\end{frame}
答案1
exampleblock
您可以按照与 beamer 定义或类似的方式定义自己的块结构alertblock
,并根据需要为这个新块设置block title
和block body
颜色。原始定义可以在文件 中找到beamerbaselocalstructure.sty
。以下是此类块的定义,您可以根据需要进行调整:
\documentclass{beamer}
\newenvironment<>{headingblock}[1]{%
\begin{actionenv}#2%
\def\insertblocktitle{#1}%
\par%
\mode<presentation>{%
\setbeamercolor{heading}{fg=black,bg=yellow}
}%
\setbeamercolor{block title}{fg=orange,bg=structure}
%\setbeamercolor{block body}{fg=green,bg=orange} % to customize the colors of the block body
\usebeamertemplate{block begin}}
{\par%
\usebeamertemplate{block end}%
\end{actionenv}}
\begin{document}
\begin{frame}
\begin{headingblock}{A test heading}
Some test text.
\end{headingblock}
\end{frame}
\end{document}
如果您对块不感兴趣并且想要更简单的东西,您可以按照以下方式进行操作(再次根据您的需要调整设置):
\documentclass{beamer}
\newcommand\myheading[1]{%
\par\bigskip
{\Large\bfseries#1}\par\smallskip}
\begin{document}
\begin{frame}
Some test text.
\myheading{A test heading}
Some test text.
\end{frame}
\end{document}