chemnum 中的字母计数器

chemnum 中的字母计数器

我只是想在我的论文中使用字母计数器。我得到了一个双字母计数器。

\documentclass[12 pt,a4 paper,oneside,openright,titlepage]{book}

\usepackage{chemnum}
\usepackage{upgreek}
\usepackage{chemmacros} 
\chemsetup{modules={spectroscopy,scheme,units}}

\begin{document}
\begin{scheme}[H]
    \centering
    \replacecmpd[TMP1, counter-format=alph]{general-thiazol}
    \replacecmpd[TMP2, counter-format=alph]{general-thiocarb}
    \replacecmpd[TMP3, counter-format=alph]{general-brom}
    \replacecmpd[TMP4, counter-format=alph]{general-ketone1}
    \includegraphics[scale=0.8]{ChemDraw/eps/Retrosintesi-tiazoli}
    \caption{Proposed retrosynthetic approach for the synthesis of thiazoles derivatives.}
    \label{retrosintesi tiazoli}
\end{scheme}
\end{document}

这就是我得到的: 在此处输入图片描述

有没有办法有一个字母计数器(仅 a、b、c 等)?

答案1

使用您提供的 MWE,您描述的问题无法重现。(我添加了float以及auto-pst-pdf包并使用了.eps仅包含四个TMP标签的文件。)相反,我得到了以下输出,其中化合物使用单个字母编号并从 开始a

在此处输入图片描述

\documentclass[12 pt,a4 paper,oneside,openright,titlepage]{book}

\usepackage{float}
\usepackage{chemnum}
\usepackage{upgreek}
\usepackage{chemmacros} 
\chemsetup{modules={spectroscopy,scheme,units}}
\usepackage{auto-pst-pdf}
\begin{document}

\begin{scheme}[H]
    \centering
    \replacecmpd[TMP1, counter-format=alph]{general-thiazol}
    \replacecmpd[TMP2, counter-format=alph]{general-thiocarb}
    \replacecmpd[TMP3, counter-format=alph]{general-brom}
    \replacecmpd[TMP4, counter-format=alph]{general-ketone1}
    \includegraphics[scale=0.8]{scheme-example}
    \caption{Proposed retrosynthetic approach for the synthesis of thiazoles derivatives.}
    \label{retrosintesi tiazoli}
\end{scheme}

\end{document}

如果 \cmpd在方案之前(以及之后)在文本中添加一个(或多个)命令,我们可以看到最有可能导致您的化合物使用两个字母进行编号的原因。我们得到的不是预期的编号方案 1、2、3、a、b、c、d、4,而是 1、2、3、d、e、f、g、8。如您所见,该counter-format=alph选项只会改变计数器的外观,而不会影响(重置)其值。

在此处输入图片描述

\documentclass[12 pt,a4 paper,oneside,openright,titlepage]{book}

\usepackage{float}
\usepackage{chemnum}
\usepackage{upgreek}
\usepackage{chemmacros} 
\chemsetup{modules={spectroscopy,scheme,units}}
\usepackage{auto-pst-pdf}
\begin{document}

\cmpd{test}
\cmpd{test2}
\cmpd{test3}


\begin{scheme}[H]
    \centering
    \replacecmpd[TMP1, counter-format=alph]{general-thiazol}
    \replacecmpd[TMP2, counter-format=alph]{general-thiocarb}
    \replacecmpd[TMP3, counter-format=alph]{general-brom}
    \replacecmpd[TMP4, counter-format=alph]{general-ketone1}
    \includegraphics[scale=0.8]{scheme-example}
    \caption{Proposed retrosynthetic approach for the synthesis of thiazoles derivatives.}
    \label{retrosintesi tiazoli}
\end{scheme}

\cmpd{test4}
\end{document}

为了解决这个问题,我们可以存储计数器的当前值,在本地将其重置为零,改变外观,然后改回先前存储的计数器,如下面的 MWE 所示,从而得到所需的编号方案:

在此处输入图片描述

\documentclass[12 pt,a4 paper,oneside,openright,titlepage]{book}

\usepackage{float}
\usepackage{chemnum}
\usepackage{upgreek}
\usepackage{chemmacros} 
\chemsetup{modules={spectroscopy,scheme,units}}
\usepackage{auto-pst-pdf}
\begin{document}

\cmpd{test}
\cmpd{test2}
\cmpd{test3}


\begin{scheme}[H]
 \newcounter{compoundnumber}                   % <-------------
 \setcounter{compoundnumber}{\value{cmpdmain}} % <-------------
 \setchemnum{counter-format=alph}              % <-------------
 \setcounter{cmpdmain}{0}
    \centering
    \replacecmpd{general-thiazol}
    \replacecmpd{general-thiocarb}
    \replacecmpd{general-brom}
    \replacecmpd{general-ketone1}
    \includegraphics[scale=0.8]{scheme-example}
    \caption{Proposed retrosynthetic approach for the synthesis of thiazoles derivatives.}
    \label{retrosintesi tiazoli}
  \setcounter{cmpdmain}{\value{compoundnumber}}% <-------------
\end{scheme}

\cmpd{test4}
\end{document}

相关内容