Wenn man den hyperlink im Mittelteil anklickt, springt man immer an den Anfang des Beispiels anstatt runter an mein Label. Gibt es Konflikte zwischen hyperrefs innerhalb der theorem-Umgebung bzw wie können diese gelöst werden? Und noch kleinere Frage am Rande: Wie setzt man hyperref innerhalb stackrel oä?

 \documentclass[12pt]{scrreprt}%bibliography=totocnumbered
    \usepackage{amsmath}
    \usepackage{mathtools}
    \usepackage{amsfonts}
    \usepackage{amssymb}
    \usepackage{amsthm}
    \numberwithin{equation}{section}
    \usepackage{blindtext}
    %Def., Sätze, Beweise,...
    \newtheorem{defi}{Definition}[chapter] %erste Zahl der Nummerierung kommt vom chapter
    \newtheorem{satz}[defi]{Satz} %einheitliche Nummerierung
    \newtheorem{bem}[defi]{Bemerkung} %einh. Numm.
    \newtheorem{folg}[defi]{Folgerung} %einh. Numm.
    \newtheorem{lem}[defi]{Lemma} %einh. Numm.
    \theoremstyle{definition} %nicht-kursive Schrift für folg. theorems
    \newtheorem{bsp}[defi]{Beispiel} %einh. Nummerierung
     %Roemische Zahlen definieren
    \newcommand{\RN}[1]{\uppercase\expandafter{\romannumeral#1}}
     %Beträge definieren
    \newcommand{\abs}[1]{\ensuremath{\left\vert#1\right\vert}}
    \usepackage[hidelinks, pdfstartview={FitV}, pdftitle={}, pdfauthor={}, pdfsubject={},                          pdfkeywords={}]{hyperref}

        \begin{document}
        \begin{bsp}
        \blindtext
            \text{Sei} A= 
            \hspace*{0.5cm} 3. Schritt: 
            $H_1 \in O(3) \ \text{mit} \  A \in \mathbb{R}^{3 \times 3} \ \text{multiplizierbar} \Rightarrow     Q_1=H_1$ (\hyperref[3. Schritt]{vgl. (\RN{2}) 3. Schritt})

            \\
            \blindtext
    \label{3. Schritt}
\begin{tabbing}
\hspace*{2.5cm} \= \kill
\hspace*{0.5cm} 3. Schritt: $H_2A_2=$
\end{tabbing}
\end{bsp}

        \end{document}

gefragt 20 Mai '19, 03:23

Bachelorette's gravatar image

Bachelorette
641510
Akzeptiert-Rate: 0%

bearbeitet 13 Jun '21, 21:09

saputello's gravatar image

saputello
11.1k174365

2

Dein Beispiel kompiliert nicht - newparagraph ist nicht definiert. Abgesehen davon: verwende \phantomsection\label{3. Schritt}.

(20 Mai '19, 09:21) Ulrike Fischer

Danke für die Anmerkung:) Dein Tipp mit phantomsection hat tatsächlich geholfen, vielen Dank!!

(20 Mai '19, 13:59) Bachelorette

1/2

Nimmt man das \\ raus, läuft das Bsp. Das Problem ist m.E., dass sich \label{3.Schritt} auf keine klare Umgebung bezieht, sondern mitten in der Landschaft steht (und damit wird die nächst-zurückliegende Umgebung "\begin{bsp}" referenziert, daher das Hochspringen an den Seitenanfang).
Beheben könnte man das hier mit
\hyperlink{<label-name>}{<angezeigter Text>} .... \hypertarget{<label-name>}{<angezeigter Text oder leer>}.
Stünde aber \label{3.Schritt} z.B. innerhalb einer equation-Umgebung, ginge es.

(20 Mai '19, 16:21) cis

2/2

Ansonsten ist das ein Beispiel mit vielen komischen Sachen darin. Ich bin überzeugt, die ganzen hspaces sind unnötig und auch für die tabbing-Umgebung gibt es sicher etwas Moderneres.

Nochmal: Wenn irgendwas Ausrichtungen haben soll, ist die array-Umgebung oft zielführend oder eben tabular, je nachdem wie groß der Matheanteil im Inhalt ist.

(20 Mai '19, 16:22) cis

PS: Und das ist wie schon angedeutet kein schönes Minimalbeispiel. Du musst davon ausgehen, dass der Helfer keine Ahnung hat von Deinem konkreten Inhalt. Statt \usepackage[hidelinks,...]{hyperref} verwendest Du \usepackage[colorlinks=true,...]{hyperref}, dass man mal sieht, was da los ist. Statt \blindtext'en hätte man hier auch \newpage (für den Link-Spring-Effekt) verwenden können.

(20 Mai '19, 16:30) cis

Der Anker für den Link wird von hyperref nicht bei der \label-Anweisung erzeugt, sondern beim Erhöhen des darüber referenzierten Zählers mit \refstepcounter. Da ein Label üblicherweise erst nach dem Element gesetzt werden kann, das einen Zähler erhöht, würde der Link sonst üblicherweise nicht auf das entsprechende Element verweisen, sondern dahinter.

Will man jedoch ein mit einem \label eine andere Stelle im Text referenzieren, so bietet hyperref die Möglichkeit, mit \phantomsection explizit einen Anker zu setzen:

\documentclass[12pt]{scrreprt}%bibliography=totocnumbered
\usepackage{amsmath}
\usepackage{mathtools}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage{amsthm}
\numberwithin{equation}{section}
\usepackage{blindtext}
%Def., Sätze, Beweise,...
\newtheorem{defi}{Definition}[chapter] %erste Zahl der Nummerierung kommt vom chapter
\newtheorem{satz}[defi]{Satz} %einheitliche Nummerierung
\newtheorem{bem}[defi]{Bemerkung} %einh. Numm.
\newtheorem{folg}[defi]{Folgerung} %einh. Numm.
\newtheorem{lem}[defi]{Lemma} %einh. Numm.
\theoremstyle{definition} %nicht-kursive Schrift für folg. theorems
\newtheorem{bsp}[defi]{Beispiel} %einh. Nummerierung
 %Roemische Zahlen definieren
\newcommand{\RN}[1]{\uppercase\expandafter{\romannumeral#1}}
 %Beträge definieren
\newcommand{\abs}[1]{\ensuremath{\left\vert#1\right\vert}}
\usepackage[pdfstartview={FitV}]{hyperref}

\begin{document}
\begin{bsp}
    \blindtext
    \text{Sei} A= \hspace*{0.5cm} 3. Schritt: 
    $H_1 \in O(3) \ \text{mit} \  A \in \mathbb{R}^{3 \times 3} \ \text{multiplizierbar} \Rightarrow     Q_1=H_1$ (\hyperref[3. Schritt]{vgl. (\RN{2}) 3. Schritt}) \\
    \blindtext[5]
    \phantomsection\label{3. Schritt}
    \begin{tabbing}
        \hspace*{2.5cm} \= \kill
        \hspace*{0.5cm} 3. Schritt: $H_2A_2=$
    \end{tabbing}
\end{bsp}

\end{document}

Ich habe mir übrigens erlaubt, das Beispiel lauffähig zu machen, ein ganz klein wenig besser zu formatieren, den Link auch sichtbar zu machen (damit dessen Auffinden im vom Online-Compiler erzeugten PDF erleichtert wird) und dafür zu sorgen, dass der dritte Schritt erst auf der nächsten Seite steht (damit man im von Online-Compiler erzeugten PDF leichter beurteilen kann, ob das Ziel korrekt angesprungen wird). Den Rest habe ich gelassen, auch wenn mir der Inhalt seltsam erscheint.

Permanenter link

beantwortet 13 Jun '21, 21:07

saputello's gravatar image

saputello
11.1k174365
Akzeptiert-Rate: 51%

Das ist ja kompliziert und war mir bisher so auch nicht bewusst. Könnte man das nicht einfach so machen, dass das erste \label nach dem Element auf das Element verweist und alle weitere \label dann automatisch ein \phantomsection erzeugen?

(16 Jun '21, 08:45) huibub
Deine Antwort
Vorschau umschalten

Folgen dieser Frage

Per E-Mail:

Wenn sie sich anmelden, kommen Sie für alle Updates hier in Frage

Per RSS:

Antworten

Antworten und Kommentare

Markdown-Grundlagen

  • *kursiv* oder _kursiv_
  • **Fett** oder __Fett__
  • Link:[Text](http://url.com/ "Titel")
  • Bild?![alt Text](/path/img.jpg "Titel")
  • nummerierte Liste: 1. Foo 2. Bar
  • zum Hinzufügen ein Zeilenumbruchs fügen Sie einfach zwei Leerzeichen an die Stelle an der die neue Linie sein soll.
  • grundlegende HTML-Tags werden ebenfalls unterstützt

Frage-Themen:

×62
×20
×6

gestellte Frage: 20 Mai '19, 03:23

Frage wurde gesehen: 4,212 Mal

zuletzt geändert: 16 Jun '21, 12:39