Anzeige:
Ergebnis 1 bis 3 von 3

Thema: Verweise verlinken

  1. #1
    Registrierter Benutzer
    Registriert seit
    11.09.2005
    Beiträge
    1.712

    Verweise verlinken

    Hallo,

    ich würde gerne in einem Dokument Verweise mit varioref setzen, damit, abhängig davon, wo das label steht, "auf der nächsten Seite" oder "auf Seite 10" ausgegeben wird.
    Dabei soll auch berücksichtigt werden, auf was verwiesen wird, also z.B. auf eine Abbildung dann so: "Abbildung 4 auf der nächsten Seite" oder "Abbildung 4 auf Seite 10".
    Das hab ich mit einer Kombination von \autoref und \vpageref auch hinbekommen, aber der Schönheitsfehler ist, dass das durch \vpageref erzeugte "auf Seite 10" nicht komplett verlinkt ist, sondern nur die Seitenzahl ist anklickbar.
    Wie kann man das lösen, dass der gesamte Ausdruck, oder wenigstens "Seite 10" anklickbar ist?

    Hier ein MB, das das Problem zeigt:
    Code:
    \documentclass[ngerman]{scrreprt} 
    \usepackage[latin1]{inputenc}
    \usepackage[T1]{fontenc}	
    \usepackage[ngerman]{babel}
    
    \usepackage{varioref}
    \usepackage{hyperref}
    
    \newcommand{\myref}[1]{\autoref{#1}\vpageref[\unskip]{#1}}
    
    \begin{document}
    
    \begin{figure}[htbp]%
    \caption{Abbildung}%
    \label{fig:abbildung}%
    \end{figure}
    
    \begin{table}%
    \caption{Tabelle}
    \label{tab:tabelle}
    \end{table}
    
    \clearpage
    
    Mit vref ergibt sich \vref{tab:tabelle} bzw. \vref{fig:abbildung}.\\[2ex]
    Mit vpageref aber nur \vpageref{tab:tabelle} bzw. \vpageref{fig:abbildung}.\\[2ex]
    Und daher auch mit myref \myref{tab:tabelle} bzw. \myref{fig:abbildung}.
    
    \clearpage
    
    Mit vref ergibt sich \vref{tab:tabelle} bzw. \vref{fig:abbildung}.\\[2ex]
    Mit vpageref aber nur \vpageref{tab:tabelle} bzw. \vpageref{fig:abbildung}.\\[2ex]
    Und daher auch mit myref \myref{tab:tabelle} bzw. \myref{fig:abbildung}.
    
    \end{document}
    Vielen Dank,
    Xenara

  2. #2
    Registrierter Benutzer
    Registriert seit
    19.05.2009
    Beiträge
    4.045
    varioref ist ja laut hyperref Readme so problematisch, dass "unsupported" ist. Was du machen kannst, ist einfach noch ein hyperlink-Befehl drumherum:

    Code:
    \newcommand{\myref}[1]{\autoref{#1}\hyperref[#1]{\vpageref[\unskip]{#1}}}

    Anmerkung: Lange Links können problematisch sein. Wenn darin ein Seitenumbruch stattfindet, wird möglicherweise die komplette Fußzeile Teil des Links.

  3. #3
    Registrierter Benutzer
    Registriert seit
    11.09.2005
    Beiträge
    1.712
    Super, das klappt soweit. Vielen Dank.

    Was wäre denn die saubere Alternative zu varioref?
    Es sieht einfach unelegant aus, wenn man 5 Abbildungen und den Text auf der gleichen Seite 10 hat, und dann jedesmal schreibt "siehe Abbildung x auf Seite 10"

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •