Как получить номера страниц для ссылки на оглавление в латексе?
Я видел документ LaTeX в формате PDF, где номера страниц внизу страницы являются гиперссылками, и при щелчке по ним вы переходите к таблице содержимого. У меня нет tex-файла, и я не могу понять, как это делается из пакета hyperref. Кто-нибудь может помочь?
4 ответа
Вы можете установить якорь на ток и переопределить \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
, использовать \addto
команда Babel или переопределить \contentsname
после \begin{document}
,
Вы пытались определить нумерацию страниц, используя это?
\pagestyle{myheadings}
\markright{ ... }
где \markright указывает номер страницы со ссылкой на страницу содержимого.
Вот как я это сделал
% !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
Больше подробностей.
Это сработало для меня.
% Make the page number link back to the table of contents
\usepackage{fancyhdr}
\pagestyle{fancy}
\fancypagestyle{plain}{
\fancyhf{}
\fancyfoot[C]{\hyperlink{toc}{\thepage}}
}
...
\hypertarget{toc}{} % anchor for page number to link to
\tableofcontents