Seite 1 von 1

Link auf Gliederungs-Header analog zu ToC

Verfasst: Di 8. Feb 2022, 20:18
von Permutation
Hallo zusammen,

ich würde gern aus dem Dokument auch auf Gliederungs-Header springen können. Dazu verwende ich folgendes.
\documentclass{report}
\usepackage{titlesec}
\usepackage{titletoc}
\usepackage{hyperref}
\titleformat{\chapter}{\huge}{\thechapter}{10pt}{\huge}
\begin{document}
\chapter[ToC1]{\hypertarget{ID1}{Header1}}
Text
\newpage
\section[ToC2]{\hypertarget{ID2}{Header2}}
Text
\newpage
\hyperlink{ID1}{Header1}\\
\hyperlink{ID2}{Header2}
\end{document}
Jedoch springen die Links nicht auf die Header, sondern immer zu dem Text drunter. in dem Beispiel zu "Text". Ich würde aber gern z.B. zu "1 Header1" springen. Eigentlich genau so wie es bei ToC passiert.
Hätte jemand eine Idee was ich machen muss, bzw. was ich falsch mache?

Schöne Grüße

Re: Link auf Gliederungs-Header analog zu ToC

Verfasst: Mi 9. Feb 2022, 08:40
von Gute*r Gȧst*in
Verwende besser \label und \hyperref:
\documentclass{report}
\usepackage{titlesec}
\usepackage{titletoc}
\usepackage{hyperref}
\titleformat{\chapter}{\huge}{\thechapter}{10pt}{\huge}
\begin{document}
\chapter[ToC1]{Header1}\label{ID1}
Text
\newpage
\section[ToC2]{Header2}\label{ID2}
Text
\newpage
\hyperref[ID1]{Header1}\\
\hyperref[ID2]{Header2}
\end{document}
Das funktioniert so übrigens unabhängig von der Verwendung von titlesec und beispielsweise auch mit den KOMA-Script-Klassen, bei denen man weder titlesec noch titletoc benötigt oder verwenden sollte.

Re: Link auf Gliederungs-Header analog zu ToC

Verfasst: Mi 9. Feb 2022, 11:41
von Permutation
Vielen Dank für den Hinweis. Funktioniert super. Jetzt bin ich nur am überlegen ob ich auf KOMA-Script umsteige... :D

Re: Link auf Gliederungs-Header analog zu ToC

Verfasst: Mi 9. Feb 2022, 11:42
von u_fischer
Permutation hat geschrieben:
Di 8. Feb 2022, 20:18
Jedoch springen die Links nicht auf die Header, sondern immer zu dem Text drunter.
Sie springen nicht zum Text darunter, sondern zur Grundlinie des Textes. Du kannst den Anker weiter nach oben verschieben:
\chapter[ToC1]{\raisebox{\baselineskip}[0pt][0pt]{\hypertarget{ID1}{}}Header1}
Das ist im Wesentlichen was hyperref sowieso macht, wenn du das empfohlene \label/\ref verwendest.