- 我有一个
beamer
包含 9 个以上部分的一个演示文稿。 - 我想使用
square
目录的符号。 - 当我的数字大于 9 时,正方形就太小了。
- 我怎样才能增加全部
square
?
*我在实际文档中使用了更大的字体,其效果比下面的 MWE 中显示的更严重。
\documentclass{beamer}
\usepackage{tikz} % for \foreach
\setbeamertemplate{sections/subsections in toc}[square]
\begin{document}
\section{Overview}
\begin{frame}[plain]
\frametitle{\contentsname}
%https://tex.stackexchange.com/questions/109748/
\begin{columns}[t]
\begin{column}{.5\textwidth}
\tableofcontents[sections={1-6}]
\end{column}
\begin{column}{.5\textwidth}
\tableofcontents[sections={7-12}]
\end{column}
\end{columns}
\end{frame}
\foreach \x in {1,...,11}{
\section{Section \x}
\begin{frame}
\frametitle{\insertsection}
Test
\end{frame}
}
\end{document}
回答后更新
- 这适用于有类似问题的人。
- 大小
square
是硬编码的,如答案中所述。 - 该代码可以在您系统的文件中找到
beamerbaseauxtemplates.sty
(如答案的注释中所述)。 - 我添加了原始代码以便更好地理解答案中的代码。
% (sub-)section in toc: square
\defbeamertemplate{section in toc}{square}
{\leavevmode\leftskip=1.75ex%
\llap{%
\usebeamerfont*{section number projected}%
\usebeamercolor[bg]{section number projected}%
\vrule width2.25ex height1.85ex depth.4ex%
\hskip-2.25ex%
\hbox to2.25ex{\hfil\color{fg}\inserttocsectionnumber\hfil}}%
\kern1.25ex\inserttocsection\par}
答案1
正方形的大小在模板定义中是硬编码的,但是您可以创建自己的模板:
\documentclass{beamer}
\usepackage{pgffor}
\defbeamertemplate{section in toc}{muhhh}
{\leavevmode\leftskip=1.75ex%
\llap{%
\usebeamerfont*{section number projected}%
\usebeamercolor[bg]{section number projected}%
\vrule width2.7ex height2.12ex depth.58ex%
\hskip-2.7ex%
\hbox to2.7ex{\hfil\color{fg}\inserttocsectionnumber\hfil}}%
\kern1.5ex\inserttocsection\par}
\setbeamertemplate{section in toc}[muhhh]
\begin{document}
\section{Overview}
\begin{frame}[plain]
\frametitle{\contentsname}
%https://tex.stackexchange.com/questions/109748/
\begin{columns}[t]
\begin{column}{.5\textwidth}
\tableofcontents[sections={1-6}]
\end{column}
\begin{column}{.5\textwidth}
\tableofcontents[sections={7-12}]
\end{column}
\end{columns}
\end{frame}
\foreach \x in {1,...,11}{
\section{Section \x}
\begin{frame}
\frametitle{\insertsection}
Test
\end{frame}
}
\end{document}