如果我在以下示例中使用 bera 字体,目录将部分写入边距。如果我删除 bera,则生成的 PDF 正常。解决这个问题的最佳方法是什么?
\documentclass[10pt,ngerman,draft]{scrbook}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{babel}
\usepackage{bera}
\usepackage{ifthen}
\begin{document}
\tableofcontents
\chapter{test}
\newcounter{ctra}
\setcounter{ctra}{1}
\whiledo {\value{ctra} < 100}%
{%
\section{Hallo Welt}\clearpage
\stepcounter {ctra}%
}
\end{document}
答案1
我认为最好的方法是使用tocstyle
(保证与 KOMA 类兼容)并使用适当的设置pagenumberbox
;例如,
\usepackage{tocstyle}
\settocstylefeature{pagenumberbox}{\hbox}
您的示例代码:
\documentclass[10pt,ngerman,draft]{scrbook}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{babel}
\usepackage{bera}
\usepackage{ifthen}
\usepackage{tocstyle}
\settocstylefeature{pagenumberbox}{\hbox}
\begin{document}
\tableofcontents
\chapter{test}
\newcounter{ctra}
\setcounter{ctra}{1}
\whiledo {\value{ctra} < 100}%
{%
\section{Hallo Welt}\clearpage
\stepcounter {ctra}%
}
\end{document}
结果:
或者,保持与原始相同的对齐方式:
\usepackage{tocstyle}
\usepackage{calc}
\settocstylefeature{pagenumberbox}{\hspace{0.5em}\parbox{\widthof{999}}}
产生