Referências de figuras personalizadas em látex?

Referências de figuras personalizadas em látex?

Ler um artigo onde os autores têm rótulos (círculos vermelhos) em uma figura e também são capazes de renderizar os rótulos na referência da figura no texto. Achei que isso era muito legal. Alguém pode revelar a magia do látex por trás disso?

insira a descrição da imagem aqui

Responder1

Você pode usar os recursos da subcaptionembalagem para personalizar rótulos e suas referências. Para desenhar esses números circulados, acho que o mais fácil é usar o TikZ.

\documentclass{article}
\usepackage{graphicx}
\usepackage{subcaption}
\usepackage{tikz}
\newcommand*{\circlednumber}[1]{%
    \tikz[text=white, font=\bfseries, baseline=(X.base)]{%
        \node[circle, draw=red!70!black, fill=red!70!black, inner sep=1.5pt] (X) {#1};
    }%
}
\renewcommand{\thesubfigure}{\arabic{subfigure}}
\DeclareCaptionLabelFormat{circled}{\circlednumber{#2}}
\captionsetup[subfigure]{labelformat=circled}
\captionsetup{subrefformat=circled}

\begin{document}

References to subfigures \subref{fig:A} and \subref{fig:B}.

\begin{figure}
\begin{subfigure}{.45\textwidth}
    \includegraphics[width=\linewidth]{example-image-A}
    \caption{A first subfigure.}
    \label{fig:A}
\end{subfigure}
\begin{subfigure}{.45\textwidth}
    \includegraphics[width=\linewidth]{example-image-B}
    \caption{A second subfigure.}
    \label{fig:B}
\end{subfigure}
\end{figure}

\end{document}

Observe que neste exemplo a formatação das referências é definida apenas parasubreferências, ou seja, para referências feitas através do \subrefcomando. Usar simplesmente \refnão formataria as referências usando os círculos.

informação relacionada