\dotfill 导致“to.44em。”被添加到书签中

\dotfill 导致“to.44em。”被添加到书签中

我过去常常\dotfill在目录中的某些章节(例如,图表列表)添加虚线。(使用 \addcontentsline 手动添加 \dotfill)一切正常,但现在这些字符被添加到了与我在目录中添加虚线的章节相对应的书签中:到.44em。可能是什么原因?

答案1

正如所述维基百科

书签问题书签显示的文本并不总是像您期望的那样。因为书签“只是文本”,所以书签可用的字符比普通 LaTeX 文本少得多。现在您可以通过为书签提供一个文本字符串来解决这个问题,该文本字符串会替换有问题的文本:

\texorpdfstring{''TEX text''}{''Bookmark Text''}

因此,我的 \dotfill 选项确实为目录添加了一条虚线,但同时它还添加了到.44em。在相应的书签的末尾。提示被发现这里解决方案是使用 \texorpdfstring:

\addcontentsline{toc}{chapter}{\texorpdfstring{My Chapter\dotfill}{My Chapter}}

答案2

\dotfill在书签中不起作用,请参阅 jleon 的引文回答

作为 的替代\texorpdfstring,当书签文本由 处理时,可以重新定义宏hyperref。以下示例\dotfill用三个点替换:

\usepackage{hyperref}
\pdfstringdefDisableCommands{\def\dotfill{...}}

相关内容