我正在用 beamer 类制作演示文稿,并使用主题 Madrid(默认设置)。完成一些框架后,我注意到目录页的左边距比其他页面的左边距小得多。而且,由于我的部分名称很短,所以看起来不太好看。
我想做的是将目录页的左边距增加 1 厘米。这是我首先尝试的:
\begin{frame}{\contentsname}
\setlength{\leftmargin}{2cm}
\tableofcontents[pausesections]
\end{frame}
但显然\leftmargin
不会影响目录。另外,玩弄会\setbeamersize{text margin left = 1cm}
影响所有框架,这不是我想要的。
接下来我尝试了一个技巧这里:创建一个新的环境,在其中\leftmargin
进行改变。
\newenvironment{chg}{%
\begin{list}{}{%
\setlength{\leftmargin}{1cm}%
}%
\item[]}{\end{list}}
...
\begin{frame}{\contentsname}
\begin{chg}
\tableofcontents[pausesections]
\end{chg}
\end{frame}
奇怪的是,这只影响了小节的标题,而不影响章节的标题。
在阅读了其他一些类似的问题后,我尝试使用小页面,如下所示:
\begin{frame}{\contentsname}
\hspace*{1cm}
\begin{minipage}{\textwidth}
\tableofcontents[pausesections]
\end{minipage}
\end{frame}
这越来越接近了:左边距变大了,但不幸的是内容标题之间的标签间隔被设置为零。当然,我希望标题遍布整个框架,就像在引入迷你页面之前一样。
欢迎提出有关如何修复目录中的标签分隔或其他增加左边距的方法的任何建议。
更新:
我刚刚发现改变小页面的高度可能会有帮助。在这个话题我发现\begin{minipage}[t][10cm][t]{\textwidth}
要替换\begin{minipage}{\textwidth}
。我尝试了这个,更改了一些参数,发现\begin{minipage}[c][6cm]{\textwidth}
在我的情况下效果很好。显然这个“6cm”只是一个估计值。
当我将原始版本的目录页与此页放在一起时,我看到除了增加左边距外,还应用了一些其他小改动。但只要没有出现更系统的解决方案,我就会保留这个。
答案1
这对我来说效果很好(在计算出 parbox / minipage 的 textwidth 和 textheight 的百分比之后):
\begin{frame}
\frametitle{TOC}
\hfill
\parbox[t]{.95\textwidth}{
\begin{minipage}[c][0.75\textheight]{\textwidth}
\tableofcontents
\end{minipage}
}
\end{frame}