当我使用\schemeref
and\schemerefsub
时,得到的不是 1 and 2a 2b,而是 1 and 1a 1b。因此,我的子编号似乎不符合我的常规编号,但当我引用化合物时,得到的是 1 and then,而不是 1a、1b、2 和 3。如何才能使我的子编号符合我的常规编号,以及如何正确引用子编号?
\documentclass[11pt, a4paper]{article}
\usepackage{bpchem}
\usepackage[crop={off},runs={2}]{auto-pst-pdf} % Use EPS graphics with pdfLaTeX
\usepackage[tracking=bpchem]{chemstyle}
\usepackage{amstext} \usepackage{caption} \usepackage{kvoptions} \usepackage{psfrag}
\usepackage{varioref} \usepackage{floatrow}
\begin{document}
%\immediate
%\write18{dir > listing}
%\IfFileExists{listing}{\message{\string\write18 ENABLED}}
\begin{figure}[h]
\schemeref[TM]{mainA}
\includegraphics[scale=0.8]{epsfigx}
\end{figure}
\begin{figure}[h]
\schemeref[TMP]{mainB}
\includegraphics[scale=0.8]{epsfigxx}
\end{figure}
\begin{figure}[h]
\schemerefsub[TMP1]{mainB}{a}
\schemerefsub[TMP2]{mainB}{b}
\schemerefsub[TMP3]{mainC}{aa}
\includegraphics[scale=0.8]{epsfigy}
\end{figure}
\compound{mainA}
\compound{mainB}
\compound{a}
\compound{b}
\compound{aa}
\end{document}
答案1
你混合了两种编号方法。你告诉chemstyle
使用bpchem
\compound
但你使用的文档中chemcompounds
命令。您应该使用bpchem
命令\CNlabel{<cpd>}
、\CNref{<cpd>}
和。\CNlabelsub{<cpd>}{<sub>}
\CNrefsub{<cpd>}{<sub>}
正确使用这些命令应该可以清除大多数错误的数字!
但是,我还发现使用此代码时编号有误:使用该软件包的 2.0l 版本chemstyle
(2012-01-28),它可以按预期工作:
\documentclass{article}
\usepackage[runs=2]{auto-pst-pdf}
\usepackage{bpchem}
\usepackage[tracking=bpchem]{chemstyle}
\begin{document}
Compound 1a: \CNlabelsub{cpdA}{one}
Compound 2: \CNlabel{cpdB}
\begin{scheme}[h]
\schemerefsub[TMP1]{cpdA}{one} % gives 1a
\schemeref[TMP2]{cpdB} % gives 2
\includegraphics{scheme-tmp}
\end{scheme}
\end{document}
需要版本 <2.0l
\makeatletter
\let\cst@ref@label\CNlabel
\makeatother
添加到序言中以修复错误编号。
另一种方法是切换到chemnum
包进行编号并使用命令\cmpd
或\replacecmpd
,分别。
\documentclass{article}
\usepackage[runs=2]{auto-pst-pdf}
\usepackage{chemnum,chemstyle}
\setchemnum{ main-sub-sep = ! }
\begin{document}
Compound 1a: \cmpd{cpdA!one}
Compound 2: \cmpd{cpdB}
\begin{scheme}[h]
\replacecmpd{cpdA!one} % gives 1a
\replacecmpd{cpdB} % gives 2
\includegraphics{scheme-tmp}
\end{scheme}
\end{document}