Verweisen auf Unterabbildungen ohne Verwendung von Untertiteln oder ähnlichen Paketen

Verweisen auf Unterabbildungen ohne Verwendung von Untertiteln oder ähnlichen Paketen

Ich arbeite an einem Buch und verwende das Subcaption-Paket, um auf einige Abbildungen zu verweisen. Ich habe jedoch festgestellt, dass es in einigen Fällen einfacher für mich ist, den Bildunterschriftentext (a), (b) usw. direkt in die Abbildung einzufügen. Um die Sache noch komplizierter zu machen, werden viele dieser Abbildungen mit Tikz erstellt, wofür ich auch das externe Tikz verwende (daher werden die Abbildungen einzeln zusammengestellt). Meiner Erfahrung nach werden bei der Verwendung von Referenzen innerhalb von Abbildungen, die mit externem erstellt wurden, die Beschriftungen aus irgendeinem Grund nicht angezeigt.

Aus all diesen Gründen besteht das Problem darin, dass es jetzt schwierig ist, auf Unterfiguren zu verweisen. Ich habe es geschafft, die Befehle \refund \hyperrefwie folgt zu verwenden:

Figure~\ref{fig:some_figure}\hyperref[fig:some_figure]{a}

Diese Lösung ist jedoch nicht perfekt, da ich beim Überfahren mit der Maus zwei separate Hyperlinks habe. Gibt es eine einfachere, bessere Möglichkeit, das gewünschte Ergebnis zu erzielen, ohne Subaption oder ähnliche Pakete zu verwenden?

Wenn es vielleicht ein Makro gibt, mit dem ich die Abbildungsnummer aus einer Abbildungsbeschriftung abrufen kann, könnte ich dem Text (a) in der Abbildungsüberschrift eine Beschriftung hinzufügen und dann wie folgt darauf verweisen:

Figure~\hyperref[fig:some_figure_a]{\getFigureNumber{fig:some_figure}a}

Antwort1

Ich verwende \subfig, \subcaptionPakete, wenn ich in meinem Text mehrere Unterfiguren habe. Ich bin nicht sicher, ob das das ist, wonach Sie suchen, aber sehen Sie sich unten meinen Ansatz an. Ich habe die latex.svg.png-Datei als Referenzbild verwendet (online gefunden).

\documentclass[12pt, a4paper]{article}
\usepackage{subfig}
\usepackage{subcaption}
\usepackage{float}
\usepackage{adjustbox}
\usepackage{hyperref}
\begin{document}
\begin{figure}[!htbp]
\centering
\subfloat[Sample]{\label{a}\includegraphics[width=.4\linewidth]{LaTeX_logo.svg.png}}\hfill
\subfloat[Sample]{\label{b}\includegraphics[width=.4\linewidth]{LaTeX_logo.svg.png}}\hfill
\subfloat[Sample]{\label{c}\includegraphics[width=.4\linewidth]{LaTeX_logo.svg.png}}\hfill
\subfloat[Sample]{\label{d}\includegraphics[width=.4\linewidth]{LaTeX_logo.svg.png}}
\caption{Sample Output.}
\end{figure}

\vspace{5em}
\huge Figures~\ref{a} to~\ref{d} are shown above. %Used \huge just for illustration purpose. 

\end{document}

Ich bekomme:

Bildbeschreibung hier eingeben

Antwort2

In der Dokumentation des Subcaption-Pakets gibt es zu diesem Thema einen Abschnitt „Untertitel in Unterabbildungen“. Insbesondere die Unterabschnitte „Referenzieren von Unterabbildungen ohne Unteruntertitel“ und „Verwenden des Tikz-Pakets“ könnten für Sie von Interesse sein.

Antwort3

Vielleicht \phantomlabel(des Pakets subcaption) und dann in Kombination mit Figure~\hyperref[fig:some_figure_a]{\ref{fig:some_figure}a}kann man tun, was man will.

verwandte Informationen