粗体文本导致目录中的水平盒子过满

粗体文本导致目录中的水平盒子过满

我正在使用 overleaf 在 latex 中撰写我的论文。我遇到了一个问题,当参考书目位于页码 >99 的页面上时,ucbthesis 类 toc 中的粗体文本的使用似乎会创建一个过满的水平框

代码大约为:

\documentclass[draft]{ucbthesis}
\usepackage[backend=biber,style=chem-acs,articletitle=true]{biblatex}
\usepackage{chemformula}
\usepackage{chemnum}
\setchemnum{init = strict}
\usepackage[LGRgreek]{mathastext}
\usepackage{float}
\usepackage[shortcuts]{extdash}
\usepackage{rotating} % provides sidewaystable and sidewaysfigure
\usepackage{graphicx}

\addtolength{\abovecaptionskip}{\baselineskip}

\newtheorem{theorem}{Jibberish}

\bibliography{references}
\appto{\bibsetup}{\sloppy}

\hyphenation{mar-gin-al-ia}
\hyphenation{bra-va-do}

\include{compound-list}

\begin{document}

\begin{frontmatter}

\tableofcontents
\clearpage
\listoffigures
\clearpage
\listoftables

\end{frontmatter}

\pagestyle{headings}

%\include{chap1}
%\include{chap2}
%\include{chap3}
\include{chap4}
%\include{chap5}

\printbibliography

\end{document}

并导致了这样的情况:

toc 溢出 hbox

答案1

ucbthesis课程是标准 LaTeX 课程的修改版本memoir ,可用于加州大学伯克利分校的博士论文和硕士论文。

草稿memoir选项用黑色矩形标记任何超出范围的线条,否则外观与最终文档相同。

当页码有三位数时会出现警告:Overfull \hbox (2.03766pt too wide)并出现如下所示的黑框:

A

可以使用以下方法纠正

\cftlocalchange{toc}{⟨pnumwidth⟩}{⟨tocrmarg⟩}

使页码宽度足够大并更改边距(memman.pdf第 160 页)

如果有必要的话\cftlocalchange{toc}{1.55em}{2.55em}将恢复正常设置。

b

\documentclass[draft]{ucbthesis}

\usepackage{showframe}% ONLY to show margins <<<<<
\begin{document}
    
    \frontmatter
    \cftlocalchange{toc}{3.55em}{5.55em}% added <<<<<<<
    
    \tableofcontents    
    \mainmatter
    
    \setcounter{page}{90}
    \chapter{One}
    \newpage
    \setcounter{page}{137}
\chapter{Two}   

\end{document}

您应该将这个问题提交给该类的维护者ucbthesis

答案2

更一般地,包含页码的框的宽度由 给出\@pnumwidth。当宏\cftlocalchange不可用时,可以通过在文档的序言中写入来更改它:

\makeatletter
\renewcommand{\@pnumwidth}{2.55em}
\renewcommand{\@tocrmarg}{3.55em}
\makeatother

重要的是\@tocrmarg > \@pnumwidth;通常,\@tocrmag = \@pnumwidth + 1em

相关内容