在align環境中使用mhchem

在align環境中使用mhchem

化學反應列表是使用align環境編寫的

    \begin{align}
                \ce{
                Ca(OH)_{2} + 2 HCl &\rightarrow CaCl$_2$ + 2 H_{2}O \nonumber \\ 
                Ca(OH)_{2} + HCl &\rightarrow CaOHCl + H_{2}O \nonumber \\
                Ca(OH)_{2} + CaCl_{2} &\rightarrow 2 CaOHCl \nonumber 
                   }
                \end{align}         

它編譯時沒有任何問題,但對於產物側的第三個反應,「2」似乎有點像下標,但反應物側第一個反應的「2」則不會發生同樣的情況。我們該如何解決這個問題以及為什麼會發生這種情況?

當我寫作時也會發生同樣的事情

    \begin{equation}
            \ce{
                Ca(OH)_{2} + CaCl_{2}.2H_{2}O \rightarrow 2CaOHCl.2H_{2}O \nonumber 
            }
            \end{equation}

產物側(CaOHCl)上的“2”顯示為下標,但 HCl 上不顯示“2”。對此我們有什麼解決辦法嗎?

答案1

mhchem帶有自己的一組反應箭頭,您可以透過以下快捷方式存取:

在此輸入影像描述

因此,只需替換\rightarrow->.如果您想堅持使用較短的\rightarrow,您可以使用\rightarrow{}以確保箭頭後面的數字不會顯示為下標:

\documentclass{article}
\usepackage[version=4]{mhchem}
\begin{document}

\begin{align*}
\ce{Ca(OH)_{2} + CaCl_{2} & \rightarrow 2 CaOHCl} \\
\ce{Ca(OH)_{2} + CaCl_{2} & \rightarrow{} 2 CaOHCl} \\
\ce{Ca(OH)_{2} + CaCl_{2} & -> 2 CaOHCl}
\end{align*}

\begin{align*}
    \ce{
    Ca(OH)_{2} + 2 HCl &-> CaCl$_2$ + 2 H_{2}O  \\ 
    Ca(OH)_{2} + HCl &-> CaOHCl + H_{2}O  \\
    Ca(OH)_{2} + CaCl_{2} & -> 2 CaOHCl  
       }
\end{align*}

\ce{Ca(OH)_{2} + CaCl_{2}.2H_{2}O -> 2 CaOHCl.2H_{2}O}

\end{document}

在此輸入影像描述

相關內容