![图形环境的非标准“数字”](https://linux22.com/image/366808/%E5%9B%BE%E5%BD%A2%E7%8E%AF%E5%A2%83%E7%9A%84%E9%9D%9E%E6%A0%87%E5%87%86%E2%80%9C%E6%95%B0%E5%AD%97%E2%80%9D.png)
我的文章中有十个图形。是否可以为其中一些图形设置任意名称?例如,我需要将它们“编号”为图 a1、图 a2、图 b1、图 b2、图 1、图 2、...
答案1
下面我定义了\setfignumprefix{<fnpf>}
它做两件事:
更新宏
\fignumprefix
;并且重置
figure
计数器。
计数器figure
表示将始终\fignumprefix
作为前缀包含在内,允许您根据需要在整个文档中更新它。
\documentclass{article}
\usepackage{caption}
\usepackage{hyperref}
\setcounter{topnumber}{4}% Just for this example
\setcounter{totalnumber}{4}% Just for this example
\newcommand{\fignumprefix}{}
\renewcommand{\thefigure}{\fignumprefix\arabic{figure}}
\renewcommand{\theHfigure}{figure.\thefigure}
\newcommand{\setfignumprefix}[1]{%
\renewcommand{\fignumprefix}{#1}% Update figure counter prefix
\setcounter{figure}{0}% Reset figure counter
}
\begin{document}
See Figures~\ref{fig:first} and~\ref{fig:second}.
After that, review Figures~\ref{fig:third} and~\ref{fig:last}.
\setfignumprefix{a}
\begin{figure}
\caption{First figure}\label{fig:first}
\end{figure}
\begin{figure}
\caption{Second figure}\label{fig:second}
\end{figure}
\setfignumprefix{b}
\begin{figure}
\caption{Third figure}\label{fig:third}
\end{figure}
\begin{figure}
\caption{Last figure}\label{fig:last}
\end{figure}
\end{document}
答案2
\documentclass{article}
\usepackage{caption}
\DeclareCaptionType{figureA}[Figure]
\def\thefigureA{a\arabic{figureA}}
\DeclareCaptionType{figureB}[Figure]
\def\thefigureB{b\arabic{figureB}}
\begin{document}
\begin{figureA}[ht!]
\centering
\fbox{FIGURE}
\caption{Caption}
\label{figa:example}
\end{figureA}
See Figure~\ref{figa:example}.
\begin{figureB}[ht!]
\centering
\fbox{FIGURE}
\caption{Caption}
\label{figb:example}
\end{figureB}
See Figure~\ref{figb:example}.
\begin{figure}[ht!]
\centering
\fbox{FIGURE}
\caption{Caption}
\label{fig:example}
\end{figure}
See Figure~\ref{fig:example}.
\end{document}