我尝试使用 tikz 环境创建“反应方案”。以下是部分代码:
\node (Ba2+) [compound] {\ce{Ba^{2+}}};
\node (BaSO4) [compound, right of=BaO, xshift=1cm] {\ce{BaSO4}};
\draw [arrow] (Ba2+)--node[anchor=south]{\ce{SO4^{2-}}}(BaSO4);
我想做的(但不知道怎么做)是将箭头垂直向下移动。LaTeX 只是将箭头从 (Ba2+) 的中心绘制到 (BaSO4) 的中心,但我希望箭头更低。使用\vspace{}
不会移动箭头。
答案1
也许这对您来说是一个解决方案?:
\documentclass{article}
\usepackage{chemformula}
\begin{document}
normal:\\
\ch[arrow-yshift=0pt]{Ba^{2+} ->[ {SO4^2-} ] BaSO4}\\
lowered:\\
\ch[arrow-yshift=-3pt]{Ba^{2+} ->[ {SO4^2-} ] BaSO4}
\end{document}
编辑:使用 chemfig (使用 tikz) 的示例:
\documentclass{article}
\usepackage{chemfig}
\begin{document}
\schemestart
\chemfig{Ba^{2+}}
\arrow{->[\chemfig{SO_4^{2-}}][][-3pt]}
\chemfig{BaSO_4}
\schemestop
\end{document}
编辑2:垂直绘制示例
\documentclass{article}
\usepackage{chemfig}
\begin{document}
\schemestart
\chemfig{Ba^{2+}}
\arrow{->[\chemfig{SO_4^{2-}}][][-3pt]}
\chemfig{BaSO_4}
\schemestop
\schemestart
\arrow[45]B\arrow[-20,2]C
\schemestop\bigskip
\schemestart
\arrow[90,,thick]B\arrow[,2]C\arrow[-45,,dashed,red]D
\schemestop
\end{document}
编辑3:反应物在盒子里的反应方案示例。
\documentclass{article}
\usepackage{chemfig}
\begin{document}
\setchemfig{compound style={draw,line width=0.8pt,semitransparent,text opacity=1,inner sep=8pt,rounded corners=1mm}}
\schemestart
\chemfig{Ba^{2+}}
\arrow([fill=white]--[fill=white]){->[\chemfig{SO_4^{2-}}]}[45]\chemfig{BaSO_4}
\arrow(--[fill=white])\chemfig{BaO + SO_2}
\arrow(--[fill=white]){-U>[*{0.180}\chemfig{O_2}]}[-90]\chemfig{BaO_2}
\schemestop
\end{document}