beamer - 处理选定页面的背景颜色

beamer - 处理选定页面的背景颜色

我正在复制 PowerPoint 设计(部分)作为beamer模板。在此设计中,一些 PP 布局(最明显的是标题页)使用全彩色背景,而其余部分则使用白色背景。

关于如何提供此功能,有什么建议吗?

我正在看\setbeamercolor{background canvas}{bg=...},但是那必须在框架之外设置,所以那是行不通的,最终会给出一个繁琐的界面。

我很想删除头部和脚部的线条(如果可能的话),然后只做一个beamercolorbox占据所有内容的

有什么建议么?

答案1

您可以使用命令和 TikZ 提供背景\node

\documentclass{beamer}
\usepackage{tikz}

\newcommand\Background{%
\begin{tikzpicture}[remember picture,overlay]
\node[inner sep=0pt,outer sep=0pt,opacity=0.5] 
  at (current page.center)
  {\includegraphics[width=\paperwidth,height=\paperheight]{expl3}};  
\end{tikzpicture}%
}
\begin{document}

\begin{frame}
Test frame with no background
\end{frame}

\begin{frame}
\Background
Test frame with background
\end{frame}

\begin{frame}
Test frame with no background
\end{frame}

\end{document}

结果:

在此处输入图片描述

更复杂的选择是重新定义frame环境以添加背景作为选项。

答案2

您始终可以定义一个新环境,该环境会构建具有特定背景颜色的框架。以下代码只是一个起点。它不适用于fragile框架,并且不允许其他frame选项(如b,c,t或覆盖规范)。

\documentclass[11pt]{beamer}

\newenvironment{colorframe}[2][]{%
\setbeamercolor{background canvas}{bg=#1}
\begin{frame}\frametitle{#2}}
{\end{frame}}

\begin{document}

\begin{frame}{Global Background Color}
  No Content
\end{frame}

\begin{colorframe}[red]{Red background}
  Some Content
\end{colorframe}

\begin{colorframe}[green]{Green background}
  Some Content on Green Background
\end{colorframe}

\begin{frame}{Global Background Color}
  No Content
\end{frame}

\end{document}

在此处输入图片描述

答案3

最简单的方法是将\setbeamercolor和框架放在一个组内。

\documentclass[11pt]{beamer}

\begin{document}

\begin{frame}{Global Background Color}
  No Content
\end{frame}

\begingroup
\setbeamercolor{background canvas}{bg=green}
\begin{frame}{Different Background Color}
  No Content
\end{frame}
\endgroup

\begin{frame}{Global Background Color}
  No Content
\end{frame}

\end{document}

相关内容