Ich mache PDF mit LaTeX. Ich habe ein paar Abschnitte und Unterabschnitte. Ich möchte einen Link zum oberen Rand des Dokuments einfügen, so dass jemand im PDF darauf klicken kann und es zu diesem Abschnitt/Unterabschnitt geht. Ich weiß, dass es möglich ist, dies mit einem verknüpfbaren Inhaltsverzeichnis zu haben, aber ich möchte kein Inhaltsverzeichnis erstellen, ich brauche mehr Kontrolle.LaTeX - Hinzufügen anklickbarer Links zu einem Abschnitt/Unterabschnitt mit einem PDF-Dokument
Antwort
Enthalten Sie \usepackage{hyperref}
in der Präambel Ihres Dokuments. Ordnen Sie den Abschnitten die richtigen Beschriftungen zu und verweisen Sie auf diese Beschriftungen mit \ref{}
. Diese Referenzen werden dann in anklickbare Links umgewandelt, wenn PDFs mit pdflatex erstellt werden.
Beachten Sie, dass Sie die Option 'draft' in Ihrer' Dokumentklasse' nicht verwenden können, um hyperref zu verwenden! – Cerran
Das hyperref
Paket hat umfangreiche Unterstützung für diese Art von Sache (wie in einer früheren Antwort erwähnt).
Hinweise und Ratschläge: hyperref ist ein großes Paket, und (unbedingt) spielt es ein paar ziemlich schmutzige Tricks mit den Eingeweiden von LaTeX. Laden Sie das Hyperref-Paket zuletzt, und wenn Ihr Dokument plötzlich merkwürdig wird, dann kommentieren Sie das Paket aus, entfernen Sie die Dateien .out
und .aux
aus Ihrem Verzeichnis und versuchen Sie erneut zu sehen, ob das Problem verschwindet. Wenn es so ist, dann ... denke an etwas.
Das hypertex
Paket kann einige der gleichen Dinge tun, und ist ein wenig leichter. Aber meine Erinnerung ist, dass es ein bisschen zerbrechlich ist und vielleicht nicht mehr sehr gepflegt wird.
Sie können einige dieser Dinge mit PDF-Specials erledigen (siehe das pdftex-Handbuch), aber das wird ein wenig hardcore und erfordert, dass Sie einiges über PDF wissen.
Wie in den anderen Antworten darauf hingewiesen, können Sie die hyperref package verwenden. Allerdings sind die Standardeinstellungen ziemlich schlecht (es eine Box fügt hinzu, dass die meisten um jeden Link hässlich betrachten), so ist hier ein typischer Code-Schnipsel, die nützlichsten Einstellungen anpassen:
\usepackage{hyperref}
\hypersetup{
colorlinks = true, % Colours links instead of ugly boxes
urlcolor = blue, % Colour for external hyperlinks
linkcolor = blue, % Colour of internal links
citecolor = red % Colour of citations
}
Auch im Fall verwenden Sie die Paket natlib (\usepackage{natbib}
) wird hyperref zwei Verbindungen produzieren:
Um dies zu beheben, add:
\usepackage{etoolbox}
\makeatletter
\pretocmd{\[email protected]}{%
\let\[email protected]@\[email protected]@citex
\def\[email protected]{#2}%
\setcounter{[email protected]@cites}{0}%
\setcounter{[email protected]@cites}{0}%
\forcsvlist{\stepcounter{[email protected]@cites}\@gobble}{#3}}{}{}
\newcounter{[email protected]@cites}
\newcounter{[email protected]@cites}
\def\[email protected]{}
% include postnote and \citet closing bracket in hyperlink
\def\[email protected]@citex#1{%
\stepcounter{[email protected]@cites}%
\[email protected]{\@citeb\@[email protected]@citeb}#1%
\ifnumequal{\value{[email protected]@cites}}{\value{[email protected]@cites}}
{\[email protected]\else\if*\[email protected]*\else%
\[email protected]\[email protected]\global\def\[email protected]{}\fi\fi}{}%
\[email protected]\else\if\relax\[email protected]\relax
\else\[email protected]@close\global\let\[email protected]\@empty\fi\fi% avoid compact citations
\[email protected]}
\renewcommand\[email protected][2]{#1}
% avoid extraneous postnotes, closing brackets
\patchcmd{\[email protected]}
{\[email protected]\else\if*#2*\else\[email protected]#2\fi
\if\relax\[email protected]\relax\else\[email protected]@close\fi\fi}{}{}{}
\patchcmd{\[email protected]}
{\if\relax\[email protected]\relax\[email protected]@citea\else\[email protected]@[email protected]\fi}
{\if\relax\[email protected]\relax\[email protected]@citea\else\[email protected]@[email protected]\fi}{}{}
\makeatother
- 1. LaTeX-Links
- 2. Hinzufügen eines Links zu einem wichtigen Pressetermin
- 3. Hinzufügen eines Links zu einem Bild mit JavaScript
- 4. Latex Inhaltsverzeichnis Links zu Wrong Abschnitt
- 5. Links zu einem anderen Dienst mit HATEOAS
- 6. Bild zu einem Navigationstitel hinzufügen
- 7. Latex: Bild zu Bildunterschrift hinzufügen
- 8. LaTeX multiple Gleichungsverweise in einem
- 9. zu einem Objekt hinzufügen
- 10. [Shiny]: Hinzufügen eines Links zu einem anderen TabPanel in einem anderen TabPanel
- 11. Zelle mit Daten aus einem UIPickerView zu einem Array hinzufügen?
- 12. Java - Hinzufügen zu einem Array mit copyOf
- 13. Tooltip zu einem Cstatic hinzufügen
- 14. Benutzersteuerelement zu einem Formular hinzufügen
- 15. Hinzufügen von Links zum Bildwert in einem Array
- 16. Elemente zu einem JList Hinzufügen
- 17. Schaltfläche zu einem Bild hinzufügen
- 18. Scrollbalken zu einem Qwidget hinzufügen
- 19. hinzufügen Grenzen zu einem UIPangesture
- 20. Sekunden zu einem Datum hinzufügen
- 21. Schemanamen zu einem Objekt hinzufügen
- 22. Hinzufügen zu einem ASP.NET-Benutzersteuerungskonstruktor
- 23. JMenuBar zu einem JPanel hinzufügen?
- 24. Java HTML in einem JTextPane mit # Links?
- 25. Android: Wie kann ich HTML-Links in einem ListView hinzufügen?
- 26. iOS anklickbarer Text in UITextView
- 27. Doxygen LaTeX-Ausgabe als Anhang zu einem größeren Dokument
- 28. Bild zu Navigationsleiste hinzufügen Links
- 29. LaTeX: Mehrere Autoren in einem zweispaltigen Artikel
- 30. W3C Validierung anklickbarer Inhalt Feld
Ein Link am Anfang des Dokuments ist sehr genau, worum es in einem Inhaltsverzeichnis geht. Wie würde sich Ihr Link von einem ToC unterscheiden? – Philipp
Philipp, ich möchte ein benutzerdefiniertes Layout statt einer Liste wie die Standard-ToC. Ich habe dieses Layout jetzt gemacht, und ich denke, das Hinzufügen von Links wäre einfacher, als ein ToC so aussehen zu lassen, wie ich es möchte. – Rory