使用 mhchem 显示碳酸盐离子

使用 mhchem 显示碳酸盐离子

我想使用 mhchem 包写出碳酸根离子的化学式。如果我写出 CO3^{2-},它看起来应该是这样的。(见图。)

离子方程 - 正常

但是,我想写出:CO3^{2-}_{(aq)}。2-电荷沿 (aq) 状态符号的右侧移动。(见图。)

离子方程式 - 不正确

有什么方法可以解决这个问题吗?

答案1

\documentclass[a4paper,12pt]{article}
\usepackage{mhchem}

\begin{document}
 \ce{CO3^{2-}_{\rlap{(aq)}}\; ->}
\end{document}

\rlap抑制内容的宽度,因此您需要\;获得正确的间距。

答案2

您可以使用{}_{(aq)}

\documentclass{article}
\usepackage[version=3]{mhchem}
\begin{document}
  \noindent IUPAC recommendation:\\
  \ce{2H+(aq) + CO3^{2-}(aq) -> CO2(g) + H2O(l)}

  \bigskip

  \noindent Subscript:\\
  \ce{2H+{}_{(aq)} + CO3^{2-}{}_{(aq)} -> CO2{}_{(g)} + H2O{}_{(l)}}
\end{document}

在此处输入图片描述

答案3

如果您不介意切换包:该chemformula包与该chemmacros包的组合可以实现各种不同的输出:

\documentclass{article}
\usepackage{chemmacros}

\begin{document}

IUPAC recommendation:\par
\ch{2 H+ \aq{} + CO3^2- \aq -> CO2 \gas{} + H2O \lqd}

\bigskip

\chemsetup{phases/pos=sub}
subscript phase descriptors after the compounds:\par
\ch{2 H+ \aq{} + CO3^2- \aq -> CO2 \gas{} + H2O \lqd}

\bigskip

phase descriptors as subscripts to the compounds directly:\par
\ch{2 H^+_{(aq)} + CO3^{2-}_{(aq)} -> CO2_{(g)} + H2O_{(l)}}

\bigskip

as before but disabled horizontal shift of the charge of \ch{H+}:\par
\ch{@{charge-hshift=0pt} 2 H^+_{(aq)} + CO3^{2-}_{(aq)} -> CO2_{(g)} + H2O_{(l)}}

\end{document}

在此处输入图片描述

相关内容