当章节和小节的数量达到两位数时,章节号和标题开始minitoc
重叠:
\documentclass{book}
\usepackage{minitoc}
\setcounter{chapter}{9}
\begin{document}
\dominitoc% Initialization
\faketableofcontents
\chapter{bla}
\minitoc% Creating an actual minitoc
\section{One}
One
\section{One}
One
\section{One}
One
\section{One}
One
\section{One}
One
\section{One}
One
\section{One}
One
\section{One}
One
\section{One}
One
\section{One}
One
\section{One}
One
\subsection{One}
One
\subsection{One}
One
\subsection{One}
One
\subsection{One}
One
\subsection{One}
One
\subsection{One}
One
\subsection{One}
One
\subsection{One}
One
\subsection{One}
One
\subsection{One}
One
\subsection{One}
One
\end{document}
知道如何防止这种情况吗?由于我有一大堆这样的文档,因此最好自动调整宽度而不是应用固定宽度。类似tocstyle
这样的软件包提供的设置tocindentauto
似乎不会影响mintoc
。
答案1
据我所知,minitoc
没有提供水平设置的设置,也就是numwidth
这里所关注的。这要么在诸如\l@section
和\l@subsection
等命令中设置,要么用于tocloft
向长度寄存器添加一些间距\cftsubsecnumwidth
。
(我不确定是否tocloft
和minitoc
总是兼容!)
这里的盒子numwidth
太小,必须扩大,缩进对这个盒子的宽度没有影响——它只是移动盒子(通常向右)
\documentclass{book}
\usepackage{tocloft}
\addtolength{\cftsubsecnumwidth}{10pt}
\usepackage{minitoc}
\setcounter{chapter}{9}
\begin{document}
\dominitoc% Initialization
\faketableofcontents
\chapter{bla}
\minitoc% Creating an actual minitoc
\section{One}
One
\section{One}
One
\section{One}
One
\section{One}
One
\section{One}
One
\section{One}
One
\section{One}
One
\section{One}
One
\section{One}
One
\section{One}
One
\section{One}
One
\subsection{One}
One
\subsection{One}
One
\subsection{One}
One
\subsection{One}
One
\subsection{One}
One
\subsection{One}
One
\subsection{One}
One
\subsection{One}
One
\subsection{One}
One
\subsection{One}
One
\subsection{One}
One
\end{document}