目录中未编号的部分对齐,包括 pdfborderstyle

目录中未编号的部分对齐,包括 pdfborderstyle

谢谢这个问题我设法让未编号的部分在目录中对齐,但是当我使用突出显示pdfborderstyle我得到一个轮廓或突出显示,没有缩进。像这样(下面的代码),

耶稣

有没有办法缩进到 getpdfborderstyle的缩进,即在蓝线处停止?如果这有意义的话。

\documentclass{book}
\usepackage{hyperref}
            \hypersetup{pdfborderstyle={/S/U/W 1} % thanks, http://tex.stackexchange.com/a/26085/22939
}
 \begin{document}
 \tableofcontents

 \chapter{Introduction}
 \chapter*{Main point}
 \phantomsection\addcontentsline{toc}{chapter}{\protect\hphantom{\numberline{\thesection}}Main point}
 \chapter{Some additional material}

 \end{document}

答案1

它不适用于您的代码(顺便说一下,它太复杂了,没有必要\hphantom,一个空的\numberline也会做同样的事情 \addcontentsline{toc}{chapter}{\protect\numberline{}Main point}:)

您必须定义一个新的内容行类型:

\documentclass{book}
\usepackage{hyperref}
            \hypersetup{pdfborderstyle={/S/U/W 1} % thanks, http://tex.stackexchange.com/a/26085/22939
}
\makeatletter
\def\toclevel@schapter{0}
\newcommand*\l@schapter[2]{%
  \ifnum \c@tocdepth >\m@ne
    \addpenalty{-\@highpenalty}%
    \vskip 1.0em \@plus\p@
    \setlength\@tempdima{1.5em}%
    \begingroup
      \parindent \z@ \rightskip \@pnumwidth
      \parfillskip -\@pnumwidth
      \leavevmode \bfseries
      \advance\leftskip\@tempdima
      \hskip -\leftskip\numberline{}%
      #1\nobreak\hfil \nobreak\hb@xt@\@pnumwidth{\hss #2}\par
      \penalty\@highpenalty
    \endgroup
  \fi}
\makeatother  
 \begin{document}
 \tableofcontents

 \chapter{Introduction}
 \chapter*{Main point}
 \addcontentsline{toc}{schapter}{Main point}
 \chapter{Some additional material}

 \end{document}

在此处输入图片描述

相关内容