如何为纯 TeX \newcount 添加 \addtoreset 机制?

如何为纯 TeX \newcount 添加 \addtoreset 机制?

我正在使用subfig子图包,因此我试图创建一个方案,在标签内添加枚举,以便更轻松地描述子图片。使用\begin{enumerate*}\begin{inparaenum}很繁琐,因为我每次都需要实例化它们,我尝试使用\newcounter但我不知道为什么当我将它放在标题内并使用时会出现大量 csname 错误refstepcounter{x}

然后我遇到了纯 TeX \newcount,它没有在标题中给出任何错误

我已经开发了我自己的最小功能示例

\newcount\cnt
\cnt=1
\newcommand{\slb}{(\textit{\@alph\cnt}){ }\advance\cnt by 1 }

\newcommand{\slrt}{\cnt 1 \relax}
\newcommand{\lbl}[1]{\label{#1}\slrt}

其中\slb显示增加的数字字母并\slrt重置编号,然后我将标签命令包装在自己的命令中\lbl,并在图形末尾重置它。

然而,如果它能像 LaTeX 计数器一样发挥作用并带有 \addtoreset 功能的话,它会更加准确。

是否可以添加这样的功能?如果可以,如何添加?

编辑:最小工作示例我想做的是消除在标题标签内创建枚举的麻烦

\documentclass[12pt]{article}
\usepackage{graphicx}
\usepackage{subfig}
\usepackage{caption}

\begin{document}
\begin{figure*}[!htb]
  \centering
  \subfloat[]{
    \includegraphics[height=0.18\textwidth]{example-image-a}%
    \label{fig:sub-0}}
  ~
  \subfloat[]{
    \includegraphics[height=0.18\textwidth]{example-image-b}%
    \label{fig:sub-1}}
  ~
  \subfloat[]{
    \includegraphics[height=0.18\textwidth]{example-image-c}%
    \label{fig:sub-2}}
\caption[Example]{Example: (\textit{a}) I'm trying, 
                           (\textit{b}) to make 
                           (\textit{c}) this enumerating easier.}
\label{fig:ex-0}
\end{figure*}
\end{document}

我只是(\textit{a})\slb

答案1

只需使用一个在 内部\newcounter每次使用时都会重置的常规方法。然后只需步进此计数器并设置它即可。以下是一个例子:\captionfigure\slb

在此处输入图片描述

\documentclass{article}

\usepackage{graphicx}
\usepackage{subfig}
\usepackage{caption}

\captionsetup{
  justification = centering,
  singlelinecheck = false
}

\newcounter{subfigcntr}[figure]
\renewcommand{\thesubfigcntr}{(\textit{\alph{subfigcntr}})}
\newcommand{\slb}{\stepcounter{subfigcntr}\thesubfigcntr~}

\begin{document}

\begin{figure*}
  \centering
  \subfloat[]{\includegraphics[height=0.18\textwidth]{example-image-a}}
  ~
  \subfloat[]{\includegraphics[height=0.18\textwidth]{example-image-b}}
  ~
  \subfloat[]{\includegraphics[height=0.18\textwidth]{example-image-c}}
  \caption[Example]{Example: \slb I'm trying, 
                             \slb to make 
                             \slb this enumerating easier.}
\end{figure*}

\begin{figure*}
  \centering
  \subfloat[]{\includegraphics[height=0.18\textwidth]{example-image-a}}
  ~
  \subfloat[]{\includegraphics[height=0.18\textwidth]{example-image-b}}
  ~
  \subfloat[]{\includegraphics[height=0.18\textwidth]{example-image-c}}
  \caption[Example]{Example: \slb I'm trying, 
                             \slb to make 
                             \slb this enumerating easier.}
\end{figure*}

\end{document}

相关内容