Generalhyperref | Hyperlinks directed to wrong Page

LaTeX specific issues not fitting into one of the other forums of this category.
Post Reply
pazmush
Posts: 23
Joined: Thu Jan 01, 2009 11:39 pm

hyperref | Hyperlinks directed to wrong Page

Post by pazmush »

Working example

Code: Select all

\documentclass[a4paper]{report}
\usepackage[style=chem-rsc]{biblatex}
\usepackage[colorlinks=true,linkcolor=blue,citecolor=red,breaklinks=true,plainpages=false,pdfpagelabels]{hyperref}

\let\originalclearpage=\clearpage%supress pagebreak/clear page must use \pagebreak when needed
\def\clearpage{\relax}

\begin{document}

\title{Hello}
\author{adam}

\pagenumbering{alph}
\maketitle

\pagestyle{plain}
\pagenumbering{roman}

\addcontentsline{toc}{chapter}{Contents}
\tableofcontents
\originalclearpage

\addcontentsline{toc}{chapter}{List of Figures}
\listoffigures
\originalclearpage

\addcontentsline{toc}{chapter}{List of Tables}
\listoftables
\originalclearpage

\pagenumbering{arabic}

\begin{refsection}
\chapter{introduction}

TextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHere.

TextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHere.
TextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHere.

TextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHere.
TextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHere.

TextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHere.
\section{one}
TextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHere.

TextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHere.
TextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHere.

TextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHere.
TextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHere.

TextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHere.
TextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHere.

TextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHereTextHere.
\end{refsection}
\originalclearpage

\end{document}
The problem is that when clicking on a link for anything in the front matter (i.e, roman numerals) it takes you to the page before. It has something to do with the page numberings I think but I can't work it out...

Recommended reading 2024:

LaTeXguide.org • LaTeX-Cookbook.net • TikZ.org

NEW: TikZ book now 40% off at Amazon.com for a short time.

User avatar
Stefan Kottwitz
Site Admin
Posts: 10321
Joined: Mon Mar 10, 2008 9:44 pm

hyperref | Hyperlinks directed to wrong Page

Post by Stefan Kottwitz »

One possibility is writing the \addcontentsline into the .toc, .lof and .lot file, at the beginning of the document, such as

Code: Select all

\addtocontents{lof}{\protect\addcontentsline{toc}{chapter}{List of Figures}}
\addtocontents{lot}{\protect\addcontentsline{toc}{chapter}{List of Tables}}
Anotherway is using \phantomsection for setting an anchor, where \addcontentsline can refer to. It belongs together this way:

Code: Select all

\originalclearpage
\phantomsection
\addcontentsline{toc}{chapter}{Contents}
\tableofcontents

\originalclearpage
\phantomsection
\addcontentsline{toc}{chapter}{List of Figures}
\listoffigures

\originalclearpage
\phantomsection
\addcontentsline{toc}{chapter}{List of Tables}
\listoftables
Stefan
LaTeX.org admin
pazmush
Posts: 23
Joined: Thu Jan 01, 2009 11:39 pm

Re: hyperref | Hyperlinks directed to wrong Page

Post by pazmush »

Thanks Stefan

phantom section worked great!
Post Reply