Alb” post=83201Ciao a tutti,
ho un problema con hyperref. Ho un documento di più pagine. Nell’ultima pagina c’è un label. Nella prima pagina c’è un \pageref che rinvia al label. LaTeX stampa correttamente il numero della pagina in cui si trova label. Ma il link aggiunto da hyperref punta alla pagina sbagliata.
Esempio minimo:
`\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{lipsum}
\usepackage{hyperref}\begin{document}
Vedi p.~\pageref{prova}
\lipsum
Il label è qui. \label{prova}
\end{document} `
In questo esempio il label è a pagina 2, ma se clicco su “p. 2” il link mi porta a pagina 1.Il problema si risolve si aggiungo \phantomsection prima del label, ma presumo che in teoria i collegamenti ipertestuali debbano funzionare senza bisogno di aggiungere una phantomsection prima di ogni label.
Ho provato a cancellare i files ausiliari e ricompilare, ma il problema resta. Nel log non trovo nessun warning. Uso TeXLive 2012 aggiornato ad oggi.
Grazie per l’aiuto.
Alberto
Quello non è un riferimento ipertestuale corretto. I comandi [tt]\label[/tt] sono legati a un contatore e, nel tuo caso, non ce n’è alcuno. Meglio usare collegamenti veri:
`\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{lipsum}
\usepackage{hyperref}
\begin{document}
Vedi p.~\hyperlink{prova}{\pageref*{prova}}
\lipsum
\hypertarget{prova}{Il label è qui.}\label{prova}
\end{document}`
Ciao
Enrico