Hyperref для подэлементов с пакетом subfig

Hyperref для подэлементов с пакетом subfig

У меня есть фигура с некоторыми подплавами. Фигура примерно такая:

введите описание изображения здесь

У меня нет каждого подфлоата по отдельности, у меня есть одна картинка.

Для связи изображения со ссылкой в ​​тексте я использовал hyperref:

\documentclass{article}
\usepackage{subfig}
\usepackage{hyperref}
\usepackage{graphicx}

\begin{document}

Figures \ref{Fig1a} and \ref{Fig1b} are in Figure \ref{Fig1}

\begin{figure}[htb]
\centering
\subfloat{
\includegraphics{example-image}
\label{Fig1a}
}
\subfloat{\label{Fig1b}}
\caption{Image description:
\textbf{(a)}~figure 1a and 
\textbf{(b)}~figure 1b
}
\label{Fig1}
\end{figure}
\end{document}

Когда я нажимаю на Fig1aи Fig1в .pdfдокументе, меня сразу же переводят на рисунок, но когда я нажимаю на Fig1bменя переводят на подпись. Как мне нажать на Fig1b и перевести на изображение, а не на подпись?

решение1

Проблема в том, как перевести вторую \subfloatв vmode, поскольку это происходит только в конце строки. Затем я подумал, что мини-страница фактически начинает новую страницу (в vmode).

Конечно, поставив\subfloat внутри мини-страницы является излишним, поскольку по сути этоявляетсямини-страница.

\documentclass{article}
\usepackage{graphicx}
\usepackage{subfig}
\usepackage{hyperref}

\begin{document}

Figures \ref{Fig1a} and \ref{Fig1b} are in Figure \ref{Fig1}

\begin{figure}[htb]
\centering
\subfloat{
  \includegraphics[width={\dimexpr 0.5\textwidth-0.5\columnsep}]{example-image-a}
  \label{Fig1a}
}\hfil
\begin{minipage}[b]{\dimexpr 0.5\textwidth-0.5\columnsep}
  \subfloat{
    \includegraphics[width=\textwidth]{example-image-b}
    \label{Fig1b}
  }
\end{minipage}
\caption{Image description:
\textbf{(a)}~figure 1a and 
\textbf{(b)}~figure 1b
}
\label{Fig1}
\end{figure}
\end{document}

Это решение использует только мини-страницы. Оно по-прежнему использует некоторые определения из пакета subfig.

\documentclass{article}
\usepackage{graphicx}
\usepackage{subfig}
\usepackage{hyperref}

\makeatletter
\newcommand{\stepsubfigure}{%
  \advance\c@figure by 1 %local
  \refstepcounter{subfigure}%
}
\makeatother

\begin{document}

Figures \ref{Fig1a} and \ref{Fig1b} are in Figure \ref{Fig1}

\begin{figure}[htb]
\begin{minipage}[b]{\dimexpr 0.5\textwidth-0.5\columnsep}
  \stepsubfigure
  \includegraphics[width=\textwidth]{example-image-a}
  \label{Fig1a}
\end{minipage}\hfill
\begin{minipage}[b]{\dimexpr 0.5\textwidth-0.5\columnsep}
  \stepsubfigure
  \includegraphics[width=\textwidth]{example-image-b}
  \label{Fig1b}
\end{minipage}
\caption{Image description:
\textbf{(a)}~figure 1a and 
\textbf{(b)}~figure 1b
}
\label{Fig1} 
\end{figure}
\end{document}

Связанный контент