在目录中移动超链接锚链接

在目录中移动超链接锚链接

在下面的例子中,带星号部分的标题在目录中移动到左侧,但相应的超链接锚链接没有移动:

\documentclass{article}
\usepackage{hyperref}
\begin{document}
\tableofcontents
\section*{Introduction}
\addcontentsline{toc}{section}{\hspace*{-1cm}Introduction}
\section{Title}
\end{document}

怎样才能移动它呢?

在此处输入图片描述

答案1

目录中各节条目的格式由宏控制\l@section。以下示例定义了\l@leftsection将条目向左移动 1cm。\toclevel@leftsection定义书签的级别编号。

\documentclass{article}
\usepackage{hyperref}

\usepackage{etoolbox}
\makeatletter
\let\l@leftsection\l@section
\let\toclevel@leftsection\toclevel@section
\patchcmd\l@leftsection{\hskip}{\kern-1cm\hskip}{}{}
\makeatother

\begin{document}
\tableofcontents
\section*{Introduction}
\addcontentsline{toc}{leftsection}{Introduction}
\section{Title}
\end{document}

结果

相关内容