![自动增加 minitoc 章节编号和标题之间的数字宽度](https://linux22.com/image/332080/%E8%87%AA%E5%8A%A8%E5%A2%9E%E5%8A%A0%20minitoc%20%E7%AB%A0%E8%8A%82%E7%BC%96%E5%8F%B7%E5%92%8C%E6%A0%87%E9%A2%98%E4%B9%8B%E9%97%B4%E7%9A%84%E6%95%B0%E5%AD%97%E5%AE%BD%E5%BA%A6.png)
当章节和小节的数量达到两位数时,章节号和标题开始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}