我想改变某些反应中氧化数的颜色,例如:
\documentclass{article}
\usepackage{chemformula}
\usepackage{chemmacros}
\usepackage[spanish]{babel}
\usepackage[version=3]{mhchem}
\let\chold\ch % necesario para que ch ponga bien las flechas
\renewcommand\ch[1]{%
\catcode`<=12
\catcode`>=12
\chold{#1}%
\catcode`<=\active
\catcode`>=\active
}
\chemsetup{
formula = {chemformula} ,
modules = {redox}
}
\chemsetup[redox]{
roman = false ,
explicit-sign = true ,
pos = top
}
\begin{document}
\ch{"\ox{5,N}" O3^- + 1 e- + 2 H+ <=> "\ox{4,N}" O2 + H2O}
\end{document}
我使用 chemmacros (ox) 来写氧化数,但没有颜色选项。有没有办法只改变氧化数?提前谢谢
答案1
更新 2020/03/09
使用最新版本chemmacros
的chemformula
- 可以使用选项
redox/format
添加颜色和 - 不再需要你的解决方法:
\documentclass{article}
\usepackage[spanish]{babel}
\usepackage{chemmacros}[2020/03/07]
\usepackage{chemformula}[2020/03/07]
\chemsetup{
formula = chemformula ,
modules = redox ,
redox/roman = false ,
redox/explicit-sign = true ,
redox/pos = top ,
redox/format = \textcolor{red}
}
\begin{document}
\ch{"\ox{5,N}" O3^- + 1 e- + 2 H+ <=> "\ox{4,N}" O2 + H2O}
<<Test>>
\end{document}
原始答案,2020/03/06
目前唯一可行的方案是禁用氧化数解析(请注意,此选项redox/roman
没有redox/explicit-sign
任何效果……)。禁用解析后,您只需使用\textcolor
:
\documentclass{article}
\usepackage{chemmacros}
\chemsetup{
formula = chemformula ,
modules = redox ,
redox/parse = false ,
redox/pos = top
}
\begin{document}
\ch{"\ox{\textcolor{red}{+5},N}" O3^-}
\end{document}