Was könnte schiefgehen, wenn ich in meinem \hyperref-Befehl kein * verwende?

Was könnte schiefgehen, wenn ich in meinem \hyperref-Befehl kein * verwende?

\hyperrefIm Latex-Handbuch auf Wikibooks heißt es, dass Sie den Befehl wie folgt verwenden sollten :

We use \hyperref[mainlemma]{lemma \ref*{mainlemma} }.

Wobei "mainlemma" der Labelname ist. Dann heißt es:

Beachten Sie * Folgendes \ref, um verschachtelte Hyperlinks zu vermeiden.

Ich habe diese Zeile in mein Dokument implementiert, einmal mit und einmal ohne *und habe keinen Unterschied bemerkt.

Was könnte also schädlich sein, wenn man es nicht verwendet *?

Antwort1

Das Hauptproblem besteht darin, dass das Dokument ohne Verwendung der markierten Version einen verschachtelten Hyperlink enthält. Da PDF-Viewer keine einheitliche Methode zum Umgang mit verschachtelten Hyperlinks haben, kann dies zu unerwarteten Ergebnissen führen.

Um dies zu veranschaulichen, betrachten Sie das MWE:

\documentclass{article}

\usepackage{hyperref}

\begin{document}

\section{Sample}
\label{sample}

\section{Another Sample}

\hyperref[sample]{section~\ref{sample}}

\end{document}

Darin okularwird angezeigt als:

Beide Hyperlinks eingerahmt

Die Verwendung von hidelinksoder colorlinkskann dieses Problem scheinbar lösen:

\documentclass{article}

\usepackage[colorlinks]{hyperref}

\begin{document}

\section{Sample}
\label{sample}

\section{Another Sample}

\hyperref[sample]{section~\ref{sample}}

\end{document}

In okulardiesem sieht es so aus:

Links rot gefärbt

Wenn ich aber okulardie Zugänglichkeitseinstellung so ändere, dass Links umrandet sind, wird es als

Linktext rot beide Links eingerahmt

Da sowohl die inneren als auch die äußeren Links auf dieselbe Stelle verweisen, okularwerden Sie mit den tatsächlichen Hyperlinks an dieselbe Stelle weitergeleitet, was jedoch andere PDF-Viewer verwirren kann. Wenn der innere Link auf eine andere Stelle verweist als der äußere Link, ist die Verwirrung noch größer. Dies kann passieren, wenn \refin einem Abschnittsbefehl verwendet wird, der im Inhaltsverzeichnis endet.

Zum Beispiel:

\documentclass{article}

\usepackage[colorlinks]{hyperref}

\begin{document}

\tableofcontents

\section{Sample}
\label{sample}

\section{Another Sample Following on from section \ref{sample}}

\end{document}

Bild des Dokuments mit Inhaltsverzeichnis

Jetzt hat das Inhaltsverzeichnis einen verschachtelten Link, aber wohin dieser Link Sie führt, hängt vom PDF-Viewer ab und davon, ob Sie das PDF- oder DVI-Format zum Generieren Ihres Dokuments verwendet haben. Wenn ich mit kompiliere pdflatexund das Dokument dann mit ansehe, okularwerde ich zu Abschnitt 2 weitergeleitet, wenn ich jedoch das Dokument in ansehe, evincewerde ich über den inneren Link zu Abschnitt 1 weitergeleitet. Wenn ich das Dokument mit latex+ dvips+ erstelle ps2pdf, passiert das Gegenteil.

verwandte Informationen