在 KaTeX 中使用 mhchem 格式化带有标签和对齐箭头的列表中的化学方程式

在 KaTeX 中使用 mhchem 格式化带有标签和对齐箭头的列表中的化学方程式

我需要帮助来格式化化学方程式,以创建一个包含标签并按箭头对齐方程式的列表。目前,我使用 mhchem 包来处理化学方程式,使用 amsmath 包来对齐方程式。虽然我对这些组件很熟悉,但我不确定如何有效地将它们组合在一起。

在此处输入图片描述

为了将方程式创建为列表,我使用了enumitem包含以下代码的包

\begin{enumerate}[label=\textbf{\Roman*}, labelsep=2em]
    \item \ce{NaCl(aq) + 3H2O(l) -> NaClO3(aq) + 3H2(g)}
    \item \ce{3NaOCl(aq) -> NaClO3(aq) + 2NaCl(aq)}
    \item \ce{NaClO3(aq) + KCl(aq) -> KClO3(aq) + NaCl(aq)}
\end{enumerate}

这将产生以下输出: 在此处输入图片描述

另一方面,为了通过箭头对齐方程式,我使用了对齐环境:

\begin{align*}
   \ce{NaCl(aq) + 3H2O(l) &-> NaClO3(aq) + 3H2(g)} \\
   \ce{3NaOCl(aq) &-> NaClO3(aq) + 2NaCl(aq)} \\
   \ce{NaClO3(aq) + KCl(aq) &-> KClO3(aq) + NaCl(aq)}
\end{align*}

产生

在此处输入图片描述 但是,我很难将这两种技术结合起来。该enumitem软件包要求将每个方程式添加为单独的项目,这使得使用对齐环境变得具有挑战性。如果您能提供任何关于如何实现所需格式的建议,或者有更好的替代方案,我将不胜感激。

答案1

看看以下解决方案是否可以接受:

\documentclass{article}
%--------------- show page layout. don't use in a real document!
\usepackage{showframe}
\renewcommand\ShowFrameLinethickness{0.15pt}
\renewcommand*\ShowFrameColor{\color{red}}
%
\usepackage{lipsum}                             % for dummy text
%---------------------------------------------------------------%
\usepackage{amsmath}
\usepackage[version=4]{mhchem}

\begin{document}
    \begin{flalign*}
\mathbf{I}   &&  \ce{NaCl(aq) + 3H2O(l)   & -> NaClO3(aq) + 3H2(g)}     &   \\
\mathbf{II}  &&  \ce{3NaOCl(aq)           &-> NaClO3(aq) + 2NaCl(aq)}   &   \\
\mathbf{III} &&  \ce{NaClO3(aq) + KCl(aq) &-> KClO3(aq) + NaCl(aq)}     &
    \end{flalign*}
\end{document}

在此处输入图片描述

相关内容