我看过一个 pdf LaTeX 文档,其中页面底部的页码是超引用链接,单击它们会跳转到目录。我没有 tex 文件,也无法从 hyperref 包中弄清楚它是如何完成的。任何人都可以帮忙吗?
问问题
4409 次
3 回答
2
您可以在 toc 处设置一个锚点并重新定义\thepage
以链接到它。这是一个例子:
\documentclass{report}
\usepackage[colorlinks]{hyperref}
\renewcommand*{\contentsname}{\hyperlink{contents}{Contents}}
\renewcommand*{\thepage}{\hyperref[contents]{\arabic{page}}}
\begin{document}
\tableofcontents
\chapter{One}
Text
\end{document}
如果你使用 babel 并希望重新定义\contentsname
,请使用 babel 的\addto
命令或重新定义\contentsname
after \begin{document}
。
于 2010-08-03T10:58:04.407 回答
0
您是否尝试过使用它来定义页码?
\pagestyle{myheadings}
\markright{ ... }
其中 \markright 指定带有指向内容页面的链接的页码。
于 2010-08-03T09:01:56.173 回答
0
这是我的做法
% !TEX encoding = UTF-8 Unicode
% !TEX TS-program = xelatex
\documentclass[UTF8, english]{article}
\usepackage{lipsum} %% produce dummy texts
\usepackage{hyperref}
\usepackage[pagestyles]{titlesec}
\newpagestyle{article}{
\setfoot
%% even pages
[]
[\footnotesize \hyperlink{toc}{\thepage}]
[]
%% odd pages
{}
{\footnotesize \hyperlink{toc}{\thepage}}
{}
}
\begin{document}
\title{example}
\date{}
\author{author}
\maketitle
\pagenumbering{roman}
\setcounter{tocdepth}{2}
\addtocontents{toc}{\protect\hypertarget{toc}{}}
\tableofcontents
\newpage
\pagenumbering{arabic}
\pagestyle{article}
\section{A}
\lipsum[1]
\subsection{a}
\lipsum[2]
\subsection{b}
\lipsum[3]
\subsection{c}
\lipsum[4]
\section{B}
\lipsum[5]
\subsection{d}
\lipsum[6]
\subsection{e}
\lipsum[7]
\section{C}
\lipsum[8]
\subsection{f}
\lipsum[9]
\subsection{g}
\lipsum[10]
\subsection{h}
\lipsum[11]
\end{document}
您当然可以自定义链接文本回到目录,但是您喜欢在序言中,请阅读文档以titlesec
获取更多详细信息。
于 2020-05-05T16:58:57.790 回答