在一篇长论文中,像往常一样充满了带标签的图表,其中有两个图表我想单独列出并用符号标记。例如,我想将它们标记为Figure $\dag$
和。我希望以一种与和Figure $\ddag$
兼容的方式执行此操作,这样当我引用} 和 时,我得到的是。我还希望图表在图表列表中使用此标签显示。有什么方法可以做到这一点吗?\label
\ref
Figure $\dag$
\label{dagfig
\ref{dagfig}
$\dag$
答案1
您可以\thefigure
在本地重新定义并降低figure
计数器:
\documentclass{article}
\begin{document}
\listoffigures
\begin{figure}
\renewcommand\thefigure{$\dag$}
\caption{Figure dag}
\label{fig:dag}
\addtocounter{figure}{-1}
\end{figure}
\begin{figure}
\renewcommand\thefigure{$\ddag$}
\caption{Figure ddag}
\label{fig:ddag}
\addtocounter{figure}{-1}
\end{figure}
Figures~\ref{fig:dag}, and~\ref{fig:ddag}...
\begin{figure}
\caption{Regular figure}
\label{fig:fig}
\end{figure}
\end{document}
埃格尔建议使用新命令来改进上述解决方案:
\documentclass{article}
\makeatletter
\newcommand\specialcaption[1]{%
\@namedef{the\@captype}{#1}%
\addtocounter{\@captype}{-1}\caption}
\makeatother
\begin{document}
\begin{figure}
\specialcaption{$\dag$}{Figure dag}
\label{fig:dag}
\end{figure}
\begin{figure}
\specialcaption{$\ddag$}{Figure ddag}
\label{fig:ddag}
\end{figure}
Figures~\ref{fig:dag}, and~\ref{fig:ddag}...
\begin{figure}
\caption{Regular figure}
\label{fig:fig}
\end{figure}
\end{document}
\specialcaption
也承认可选参数,如
\specialcaption{$\dag$}[short]{long}
并且,由于它使用\@captype
,因此此命令也可在环境中使用table
。使用脆弱命令的常见预防措施也适用于\specialcaption
。