我只是想在我的论文中使用字母计数器。我得到了一个双字母计数器。
\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}