如何改变 chemmacros 中氧化数的颜色?

如何改变 chemmacros 中氧化数的颜色?

我想改变某些反应中氧化数的颜色,例如:

\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

使用最新版本chemmacroschemformula

  1. 可以使用选项redox/format添加颜色和
  2. 不再需要你的解决方法:
\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}

在此处输入图片描述

相关内容