4

I Want ammonium oxalate and calcium oxalate to be at middle of the line. But can't figure out how to do so :(

\documentclass[a4paper,11pt]{article}
\usepackage[version=4]{mhchem}
\usepackage{chemfig}
\setchemfig{atom sep=4ex}
\begin{document}
\ce{Ca^2+ + \chemfig{C(-[:180,1.4]NH_{4}^{+}\charge{90=\|}{O})(-[:90]C(-[:180,1.4]NH_{4}^{+}\charge{90=\|}{O})=O)=O} ->Ca^{2+}} \chemfig{C(-[:180]\charge{90=\|}{O})(-[:90]C(-[:180]\charge{90=\|}{O})=O)=O} \ce{v + 2NH4+}
\end{document}

enter image description here

1

2 Answers 2

5

Using only chemfig package,

\documentclass[a4paper,11pt]{article}
\usepackage{tikz}
\usetikzlibrary{arrows,arrows.meta}
\usepackage{chemfig}
\setchemfig{atom sep=4ex,arrow style={-stealth}} %  or arrow style={->}
\begin{document}
    \schemestart
    \chemfig{Ca^{2+}}
    \arrow(.mid east--){0}[,0]
    \+
    \arrow{0}[,0]
    \chemfig{C(-[:180,1.4]NH_{4}^{+}\charge{90=\|}{O})(-[:90]C(-[:180,1.4]NH_{4}^{+}\charge{90=\|}{O})=O)=O}
    \arrow
    \chemfig{C(-[:180]Ca^{2+}\,|\charge{90=\|}{O})(-[:90]C(-[:180]\charge{90=\|}{O})=O)=O|\,\downarrow}
    \arrow{0}[,0]
    \+
    \arrow(--.mid east){0}[,0.6]
    \chemfig{2\,|NH_4^{\,+}}
    \schemestop
\end{document}

enter image description here

2
  • Thanks a lot. Is it possible to change the arrow type here? I've used mhchem arrow(photo attached in question) in the whole document. This arrow looks a bit out of place.
    – Soyeb Jim
    Aug 8, 2021 at 6:28
  • 1
    @Soyeb Jim yes, see edit
    – polyn
    Aug 8, 2021 at 8:25
4

another way

\schemestart
\chemfig[yshift=10pt]{Ca^{2+}}
%
\chemfig[yshift=10pt]{+}
%
\chemfig{C(-[:180,1.4]NH^{+}_{4}{}^{-}O)(-[:90]C(-[:180,1.4]NH^{+}_{4}{}^{-}O)=O)=O}
%
\arrow{->}[0,1]
%
\chemfig{C(-[:180,1.4]{}^{-}O-[:160,1.5,,,dotted]Ca^{2+}-[:20,1.5,,,dotted])(-[:90]C(-[:180,1.4]{}^{-}O)=O)=O}
%
\arrow{0}[0,.1]\+
%
\chemfig{2\,|NH_4^{\,+}}
\schemestop

enter image description here

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .