我想展示苯甲酸钠和钠石灰之间的反应,生成苯和 na2co3
这是我的代码
\documentclass[11pt]{article}
\usepackage{fullpage}
\usepackage{chemfig,chemmacros}
\def\benzene{\chemfig{**6(------)}}
\def\upsidebenzene{\chemfig{[2]**6(------)}}
\def\sodiumbenzoate{\chemfig{[2]**6(-(-COONa)-----)}}
\def\NaOH{\chemfig{NaOH}}
\def\CaO{\chemfig{CaO}}
\begin{document}
\schemestart
\sodiumbenzoate
+
\NaOH
\arrow{->[\footnotesize\chemfig{CaO}][$\Delta$]}
\benzene + \CaO
\schemestop
\end{document}
主要问题是 + 和 CaO 之间没有空格(在反应物侧),我找不到在符号下方写名称的任何想法。我的意思是,我不知道如何在其结构下方写苯甲酸钠。而且 CaO 和 Na2C03 不相对于苯环在中心对齐
有人可以给我代码来修复它吗谢谢
答案1
可以用 来在分子下方放置名称\chemname{<molecule>}{<name>}
。
在一个方案中,不同\arrow
s 之间的一切都被视为一化合物,箭头位于整个结构的中心。可以使用以下方式显示\schemedebug{true}
:
\arrow{0}[,0]
因此,一种可能性是在中间放置长度为零的不可见箭头( ):
\schemedebug{true}
\schemestart
\sodiumbenzoate \arrow{0}[,0]
+
\NaOH
\arrow{->[\footnotesize\chemfig{CaO}][$\Delta$]}
\benzene \arrow{0}[,0] + \CaO
\schemestop
结合起来,将得到(请注意,我使用了不同的可能性来绘制苯甲酸钠,以便给它一个不同的基线(手册第 4 页chemfig
:“ChemFig 始终将分子的第一个原子放在前面的代码的基线上。”)):
\schemedebug{true}
\schemestart
\chemname{\chemfig{COONa-[4]**6(------)}}{sodium benzoate}
\+
NaOH
\arrow{->[\footnotesize\chemfig{CaO}][$\Delta$]}
\chemfig{**6(------)}
\arrow{0}[,0]
\+
CaO
\schemestop
名称再次扰乱了对齐。现在您可以不使用名称,\chemname
而是在下面放置带有更多不可见箭头的名称,或者您可以调整起始处的锚点\arrow
(查看(.{4.85}--)
论点\arrow
并研究手册中“反应方案”部分中的“锚定”部分chemfig
):
\schemedebug{true}
\schemestart
\chemname{\chemfig{COONa-[4]**6(------)}}{sodium benzoate}
\+
NaOH
\arrow(.{4.85}--){->[\footnotesize\chemfig{CaO}][$\Delta$]}
\chemfig{**6(------)}
\arrow{0}[,0]
\+
CaO
\schemestop
可能还有其他解决方案。我总是会忘记一种或多种方法……