我一直在关注这发帖创建我自己的主题。但是,我想创建一个支持不同框架类型的不同外观和感觉的 Beamer 主题。以下是一些示例:
具有全页背景图像、标题和副标题的框架。以下是一些无法编译的虚构代码:
\begin{frame}{picture}
\framepic{images/bg.jpg}
\frametitle{Nothing was the same.}
Always felt like my vision been bigger than the bigger picture.
\end{frame}
看起来可能是这样的:
或者带有标题和列表的框架。以下是一些其他的代码:
\begin{frame}{list}
\frametitle{Frank Ocean}
\begin{itemize}
\item \emph{Tuesday}
\item Thinking About You
\item Sweet Life
\item Not Just Money
\end{itemize}
\end{frame}
看起来可能是这样的:
我想我可以使用 \newcommand 和 \newenvironment 创建我自己的单独命令集,但是,我希望使用 Beamer 惯用命令来执行此操作。
这有可能吗?什么是干净的方法?
答案1
这是从 darthbith 的建议开始的。
\documentclass{beamer}
\usepackage{tikz}
\begin{document}
\begin{frame}{picture}
%\framepic{images/bg.jpg}
\frametitle{Nothing was the same.}
\begin{tikzpicture}[remember picture,overlay]
\node[at=(current page.center)] {
\includegraphics[width=\paperwidth]{bg}
};
\end{tikzpicture}
Always felt like my vision been bigger than the bigger picture.
\end{frame}
\begin{frame}{list}
\frametitle{Frank Ocean}
\begin{itemize}
\item \emph{Tuesday}
\item Thinking About You
\item Sweet Life
\item Not Just Money
\end{itemize}
\end{frame}
\end{document}
答案2
另一个可能的建议是,您想定义几种框架类型......
我使用这个定义来打印一个中间带有一些文本的分隔框。
\newcommand{\sepframe}[1]{
\begin{frame}[noframenumbering,plain]
\begin{tikzpicture}[remember picture,overlay]
\node[font=\sffamily\huge\bfseries\color{grayd},text width=10cm,text badly centered] at (current page.center) {\uppercase\expandafter{#1}};
\end{tikzpicture}
\end{frame}
}
在文档内容中,我会像这样调用 sepframe:
\begin{document}
% Some frames...
\sepframe{Next topic}
% Some frames...
\end{document}
这种方法对于图片材料来说很有效,但对于列表来说并不完全适用……最后它不只是一个带有itemize
内部的框架吗?