하위 캡션이나 유사한 패키지를 사용하지 않고 하위 그림 참조

하위 캡션이나 유사한 패키지를 사용하지 않고 하위 그림 참조

저는 책을 집필 중이며 일부 그림을 참조하기 위해 하위 캡션 패키지를 사용합니다. 그러나 어떤 경우에는 캡션 텍스트 (a), (b) 등을 그림에 직접 추가하는 것이 더 쉽다는 것을 알았습니다. 상황을 더 복잡하게 만들기 위해 이러한 그림 중 다수는 tikz를 사용하여 생성되었으며, 이에 대해 tikz 외부도 사용합니다(따라서 그림은 개별적으로 컴파일됩니다. 내 경험에 따르면 외부를 사용하여 컴파일된 그림 내 참조를 사용하면 일부에 대한 레이블이 표시되지 않습니다). 이유.

이 때문에 문제는 이제 하위 그림을 참조하기가 어렵다는 것입니다. 다음과 같이 \ref및 명령을 사용했습니다 .\hyperref

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

하지만 이 솔루션은 완벽하지 않습니다. 마우스를 가져가면 두 개의 별도 하이퍼링크가 표시되기 때문입니다. 하위 캡션이나 유사한 패키지를 사용하지 않고 원하는 것을 달성할 수 있는 더 간단하고 더 나은 방법이 있습니까?

아마도 그림 레이블에서 그림 번호를 얻는 데 사용할 수 있는 매크로가 있는 경우 그림 캡션의 텍스트(a)에 레이블을 부착한 다음 다음과 같이 참조할 수 있습니다.

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

답변1

나는 글에 하위 그림이 여러 개 있을 때 패키지를 \subfig사용 합니다 . \subcaption이것이 당신이 찾고 있는 것인지 확실하지 않지만 아래의 접근 방식을 참조하십시오. latex.svg.png 파일을 참조 사진(온라인에서 찾았음)으로 사용했습니다 .

\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}

나는 얻다:

여기에 이미지 설명을 입력하세요

답변2

하위 캡션 패키지 문서에는 이 주제와 관련된 "하위 그림 내부 캡션" 섹션이 포함되어 있습니다. 특히 "하위 캡션 없이 하위 그림 참조" 및 "tikz 패키지 사용" 하위 섹션이 흥미로울 수 있습니다.

답변3

아마도 \phantomlabel(패키지의 subcaption) 다음과 결합하여 Figure~\hyperref[fig:some_figure_a]{\ref{fig:some_figure}a}원하는 것을 수행할 수 있습니다.

관련 정보