\pageref nicht synchron mit \label

\pageref nicht synchron mit \label

Ich habe \pagerferauf die Codeliste auf der nächsten Seite verwiesen. Die Liste ist mit ausgestattet \label. Wenn ich PDF aus der TeX-Datei erzeuge mit

latexmk -pdflatex='pdflatex -shell-escape -interaction nonstopmode' -pdf -bibtex -f %f

Befehl zeigt die Referenz die richtige Seitenzahl an, springt aber beim Anklicken auf die falsche Seite. Mein anfängliches Problem war, dass die Codeauflistung nicht auf den verbleibenden Platz der Seite passte, also habe ich \newpagedavor hinzugefügt. Dadurch wurde die Zahl in behoben \pageref, aber nicht das Verhalten.

Nachfolgend sind die „interessanten“ Teile aufgeführt, die meiner Meinung nach für das Problem relevant sind:

\subsection{Larger example}
\label{sec-2-3}

[...]

Whoa, this was a lot of code (see page \pageref{if_pressed}) [...]

\newpage

\begin{minted}[bgcolor=codebg,fontsize=\scriptsize]{prolog}
if_pressed(Button, modifiers(Playback, Position, Content, Mode), NextState):-
    ( ... ).
\end{minted}
\label{if_pressed}
\subsection{Queries}

Antwort1

Ich schlage vor, Sie fügen die Anweisung ein

\phantomsection

zwischen \newpageund \begin{minted}. Der Zweck dieser Anweisung besteht darin, eine Art „Anker“ für Hyperref bereitzustellen, sodass ein Querverweis auf ein Objekt, dem kein automatischer Zähler zugeordnet ist, Sie trotzdem an die gewünschte Stelle im Dokument führt.

verwandte Informationen