Seite 1 von 1

Keine Hyperref Funktion in externer TikZ-Grafik

Verfasst: Sa 22. Dez 2018, 19:05
von davidgrill's
Hallo Freunde,

ich würde gerne Links in externalisierten TikZ-Grafiken nutzen.
Wenn ich nicht externalsiere klappen die Links.
Wenn die Grafik aber ausgelagert wird, klappen die Links nicht mehr.
Aus dem TikZ-Manual bin ich nicht ganz schlau geworden.
Dort wird gesagt, dass mit list and make Funktion mehr klappt und es wird beschrieben, dass bei externalisierten Grafiken aux files erzeugt werdenn, die in die Hauptauxdatei kopiert wird, aber trotzdem klappt es bei dem Beispiel nicht.

Hat jemand einen Plan?
Oder ist das texnisch unmöglich?

Ich habe shell-escape aktiviert.
Dies klappt auch normal.

\documentclass{article}
\usepackage{hyperref}
\usepackage{tikz}
\usetikzlibrary{external}
\tikzexternalize[mode=list and make]
\begin{document}
\begin{tikzpicture}
  \node {root}
    child {node {\ref{eq:einstein}left}}
    child {node {right}
    };
\end{tikzpicture}

Gleichung Nr.\ref{eq:einstein}.
\newpage
\begin{equation}
 \label{eq:einstein}
 E = m \cdot c^2
\end{equation}
\end{document}

Verfasst: Sa 22. Dez 2018, 19:32
von Rolli
Hallo,

so ganz ist mir nicht klar, was Du willst.

Vorab eine Vermutung, bzw. zwei Fragen:

1. Hast Du system commands erlaubt (shell-escape)?

2. Was steht denn in der log-Datei?

Gruß vom Rolli

Verfasst: Sa 22. Dez 2018, 22:57
von u_fischer
Wenn du Bilder mit \includegraphics einfügst (und das passiert beim Externalisieren), gehen die Annotationen (Links) verloren. Theoretisch kann man die wieder einfügen, siehe z.B https://tex.stackexchange.com/a/44104/2388
aber ob und wie gut es funktioniert weiß ich nicht.

Verfasst: So 23. Dez 2018, 00:09
von davidgrill's
Danke für die Hinweise.
Aber in der TikZ- Doku steht dass ref und label klappen
(50.4.1 Support for Labels and References In External Files).
Ich denk da immer auch am hyperref aber das zählt da nicht zu?

Verfasst: So 23. Dez 2018, 10:02
von Gast
\label und \ref in ihrer Kernfunktionalität, also der korrekten Erstellung von Querverweisen, funktionieren auch. Du siehst das selbst insofern als das \ref{eq.einstein} tatsächlich den korrekten Text ausgibt.

Was nicht funktioniert sind, wie von Ulrike erwähnt, alle Arten von Annotationen und dazu gehören Sprünge, Bookmarks, Mausaktionen etc. irgendwo innerhalb der Abbildungen. Wenn du so etwas brauchst, solltest du externalize für dies jeweilige Abbildung deaktivieren. Bei Verwendung von lualatex sollte das kein Problem sein, kostet aber natürlich Rechenzeit.

Verfasst: So 23. Dez 2018, 14:53
von davidgrill's
Vielen Dank für die Erklärungen.

Es ist so, dass ich einige Plots von matlab2tikz verwende, die den TeX-Speicher so ausreizen, dass ich zum externalisieren gezwungen bin.

Ich habe gehört, dass man den Speicher auch erweitern kann, aber auch da wird es ein Limit geben, was man nach ein paar weiteren Diagrammen erreicht, oder?
Geht es dabei um verbauten Arbeitsspeicher?

Gibt es bei LuaLaTeX kein Speicherlimit?
Kann man da unbegrenzt reinhauen und das kompilieren dauert dann einfach ne stunde oder so? Wieso geht das bei PdfLaTeX nicht?

Ich habe das mit dem pax-Paket von Ulrike getestet, aber dadurch habe ich nicht hinbekommen Verlinkungen der Grafiken ins Hauptdokument herzustellen.

Verfasst: So 23. Dez 2018, 16:23
von Gast
Bei lualatex gibt es keine festen Speicherarrays. Damit ist der Speicher nur vom System begrenzt. Siehe auch https://texwelt.de/wissen/fragen/5868/w ... nd-xelatex und https://texwelt.de/wissen/fragen/70/was-ist-luatex.

Man kann aber auch bei pdflatex zusätzlichen Speicher allozieren. Nur muss man das bereits beim Aufruf machen. Siehe dazu das pdftex-Manual bzw. die Anleitung der verwendeten TeX-Distribution.