![如何在不影响文档的情况下更改 TOC 计数器?](https://linux22.com/image/395868/%E5%A6%82%E4%BD%95%E5%9C%A8%E4%B8%8D%E5%BD%B1%E5%93%8D%E6%96%87%E6%A1%A3%E7%9A%84%E6%83%85%E5%86%B5%E4%B8%8B%E6%9B%B4%E6%94%B9%20TOC%20%E8%AE%A1%E6%95%B0%E5%99%A8%EF%BC%9F.png)
我正在使用 XeLaTeX 的书籍类。我想更改目录计数器“I”(如此处所示),
用项目符号但重新定义罗马字母也会改变主文档中的字母(如此处所示)
然后它可能会看起来像“零件(项目符号)”,这毫无意义。因此,我想将目录计数器与零件定义分开。
MWE-
\documentclass[11pt]{book}
\raggedright
\usepackage[hidelinks]{hyperref}
\begin{document}
\frontmatter
\tableofcontents
\mainmatter
\part{The Part}
\chapter{The Chapter}
\section{The Section}
\end{document}
这只是额外的想法,而不是主要问题,但由于我也在使用 hyperref,它会自动为 pdf 创建大纲。到目前为止,我看到大纲中的零件定义中也有相同的实体。
这意味着如果我们用项目符号替换计数器,那么轮廓也会发生变化,因此我更喜欢基于unicode的项目符号。 是否可以?
答案1
在书中,目录中部分条目的格式是相当硬编码的。因此您需要重新定义一个内部命令(在加载 hyperref 之前)。这将更改目录和书签:
\documentclass[11pt]{book}
\usepackage{etoolbox}
\makeatletter
\patchcmd\@part{\thepart}{\textbullet}{}{\fail}
\makeatother
\raggedright
\usepackage[hidelinks]{hyperref}
\begin{document}
\frontmatter
\tableofcontents
\mainmatter
\part{The Part}
\chapter{The Chapter}
\section{The Section}
\end{document}