【LaTeX技巧29】如何让章节与目录互相链接?

2015-03-16 20:19 阅读 353 次 评论关闭

使用LaTeX进行论文排版时,如何让章节目录互相链接呢?通常,我们用hyperref来做目录的超级链接,通过目录我们可以跳转到章节所在页,有用户提出能不能再从章节所在页跳转到目录处。其实解决方法很简单,在chapter的地方加一个可以链接到目录的锚点命令就可以了。

代码如下:
\documentclass{report}
\usepackage[explicit]{titlesec}
\usepackage{hyperref}

\titleformat{\chapter}[display]
{\normalfont\huge\bfseries}{\chaptertitlename\ \thechapter}{20pt}
{\Huge\hyperlink{chap\thechapter}{#1}}
\titleformat{name=\chapter,numberless}[display]
{\normalfont\huge\bfseries}{}{-22pt}
{\Huge#1}

\makeatletter
\def\@chapter[#1]#2{\ifnum \c@secnumdepth >\m@ne
\refstepcounter{chapter}%
\typeout{\@chapapp\space\thechapter.}%
\addcontentsline{toc}{chapter}%
{\protect\numberline{\thechapter}\string\hypertarget{chap\thechapter}{#1}}%
\else
\addcontentsline{toc}{chapter}{#1}%
\fi
\chaptermark{#1}%
\addtocontents{lof}{\protect\addvspace{10\p@}}%
\addtocontents{lot}{\protect\addvspace{10\p@}}%
\if@twocolumn
\@topnewpage[\@makechapterhead{#2}]%
\else
\@makechapterhead{#2}%
\@afterheading
\fi}
\makeatother

\begin{document}

\tableofcontents
\chapter{Test Chapter One}
\chapter{Test Chapter Two}
\chapter{Test Chapter Three}

\end{document}

有关LaTeX中超链接的问题可以参考下《【latex学习资料】Latex中的超链接(资料下载)》,通的Latex模板可以参考《【latex学习笔记】通用型简单latex模板》。

 

版权声明:本文著作权归原作者所有,欢迎分享本文,谢谢支持!
转载请注明:【LaTeX技巧29】如何让章节与目录互相链接? | 猎微网

评论已关闭!