我正在尝试使用 chemfig 包重现以下等式:
我已经花了几个小时尝试不同的方法,但是一旦一种方法奏效,其他方法似乎就会出错。
主要问题是括号或费用(或括号后面有其他内容)。
它不需要与示例完全相同。它只要能起作用并传达相同的信息即可。
这是我最好的两次尝试(可能有错误,但它似乎在 Overleaf 上部分有效):
\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage{chemfig}
\usepackage[version=3]{mhchem}
\begin{document}
2 \chemfig{R-C(-[:0]\chemabove{O}{-})=[:90]O}\chemabove{Na}{+}}
+
\chemfig{Ca^{2+}}(aq)
\ce{->}
\chemfig{{(}R-C(-[:0]O)=[:90]O}{)_2}Ca}(s)
+
\vspace{2cm}
\schemestart
\chemname{\chemfig{2 R-C(-[:0]\chemabove{O}{-})=[:90]O}\chemabove{Na}{+}}{}(aq)
\+
\chemfig{Ca^{2+}}(aq)
\arrow(.mid east--.mid west)
\chemname{\chemfig{{(}R-C(-[:0]O)=[:90]O}{)}Ca}
{}(aq)
\+
\chemname{\chemfig{H_2O}}{}
\schemestop
\chemnameinit{}
\end{document}
输出如下:
答案1
以下代码是您发布的经过简化和调整的 MWE。为了更轻松地模仿 sans 字体(可能是 Arial,正如 ACS 和大多数其他出版商的指南所建议的那样),我切换到 XeLaTeX 并启用了 Fira(免费替代品)字体。此外,我使用chemmacros
启用了所有模块的包,因为它提供了许多有用的快捷方式,也适用于聚合状态(根据 IUPAC,聚合状态不应为下标)。
% !TEX program = xelatex
\documentclass{article}
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{amsfonts}
\usepackage{mathtools}
\usepackage{fontspec}
\setmainfont{Fira Sans}
\usepackage[math-style = ISO]{unicode-math}
\setmathfont{Fira Math}
\usepackage{siunitx}
\usepackage{chemmacros}
\chemsetup{
modules = all,
}
\usepackage{chemfig}
\setchemfig{
atom sep = 1.75em,
bond join = true,
bond style = {
line width = 0.6pt
},
}
\begin{document}
\schemestart
2\,\chemfig{R-C(=[:90]O)-O\rlap{${}^-$}}\; \ch{Na+ \aq}
\+
\ch{Ca^2+ \aq}
\arrow(.mid east--.mid west)
\chemleft{[}
\chemfig{R-C(=[:90]O)-O}
\chemright{]_2}
\ch{Ca \sld}
\+
2\,\ch{Na+ \aq}
\schemestop
\end{document}