I would like to define a very plain caption format that simply typesets the caption label and text as if it were normal inline text. Of course I would like to keep the the functionality of \caption (label/ref, hyperlinks, list of figures, etc.). I want to position the caption manually using TikZ nodes.
Is this somehow possible with the caption package?
An example to illustrate what I am trying to do:
\documentclass{article}
\usepackage{tikz}
\usepackage{caption}
\usepackage{hyperref}
\tikzset{%
caption/.style={%
anchor=center,
draw=blue, fill=blue!20,
font=\color{blue}},
figure/.style={%
inner sep=1cm,
draw=blue,
minimum width=\linewidth}%
}%
\begin{document}
\begin{figure}
\begin{tikzpicture}
\node[figure] (fig) {Nice figure.};
\node at (fig.north) {Figure 0: My figure};
\end{tikzpicture}
\end{figure}
% Does not work
% \captionsetup[figure]{format=plain,skip=0pt,indention=0pt}
% \begin{figure}
% \begin{tikzpicture}
% \node[figure] (fig) {Nice figure.};
% \node at (fig.north) {%
% \caption{My figure}\label{fig:myfig}};
% \end{tikzpicture}
% \end{figure}
% This is \autoref{fig:myfig}.
\end{document}
Best Answer
Yes, it's possible with the caption package. Just use the
\captionof
command, for instance inside a parbox: