我正在beamer
使用 Bergen 风格创建演示文稿。如您在下面的示例中所见,左侧有一个边距,用于 Titleframe、ToC 和enumerate
环境itemize
。(谁?和何时?写在边距中。)我想手动访问此边距。例如,我希望能够将图像的标题放在此边距中。否则,我最终会在很多框架上留下大量空白。
有谁知道这是怎么做到的吗?
感谢您的帮助!
\documentclass{beamer}
\usetheme{Bergen}
\usecolortheme{beetle}
\beamertemplatenavigationsymbolsempty
\usepackage{tikz}
\author{author}
\title{MWE}
\begin{document}
\begin{frame}
\maketitle
\end{frame}
\begin{frame}
\tableofcontents
\end{frame}
\section{section1}
\subsection{subsection1.1}
\begin{frame}
\begin{itemize}
\item abcde
\item fghij
\item klmno
\end{itemize}
\begin{enumerate}
\item 12345
\item 67890
\end{enumerate}
\end{frame}
\section{section2}
\subsection{subsection2.1}
\begin{figure}
\begin{tikzpicture}
\draw (0,0) -- (0,1) -- (1,1) -- (1,0) -- (0,0);
\end{tikzpicture}
\caption{caption in the margin would be nice}
\end{figure}
\end{document}
答案1
一般来说,你可以用 来访问左边距\llap
。对于figure
标题,你必须避开figure
环境,这样你就可以使用\captionof{figure}{}
,它可以放在\llap
ped中\parbox
。
我模糊地记得有人警告不要将caption
( 必需\captionof
) 包与 结合使用beamer
。我无法谈论那个警告。
\documentclass{beamer}
\usetheme{Bergen}
\usecolortheme{beetle}
\beamertemplatenavigationsymbolsempty
\usepackage{caption,stackengine}
\usepackage{tikz}
\author{author}
\title{MWE}
\begin{document}
\begin{frame}
\maketitle
\end{frame}
\begin{frame}
\tableofcontents
\end{frame}
\section{section1}
\subsection{subsection1.1}
\begin{frame}
\begin{itemize}
\item abcde
\item fghij
\item klmno
\end{itemize}
\begin{enumerate}
\item 12345
\item 67890
\end{enumerate}
\end{frame}
\section{section2}
\subsection{subsection2.1}
%\begin{figure}
\smash{\llap{\parbox[t]{1.1in}{\captionof{figure}{%
caption in the margin would be nice}}~~~}}
\belowbaseline[-\ht\strutbox]{\begin{tikzpicture}
\draw (0,0) -- (0,2) -- (2,2) -- (2,0) -- (0,0);
\end{tikzpicture}}
%\end{figure}
\end{document}