到达原子编号不适用于 \chemabove

到达原子编号不适用于 \chemabove

考虑以下 MWE:

\documentclass{article}
\usepackage{chemfig}

\begin{document}

\chemfig{
    X
    -[:30,,,2]^{18}\chemabove{O}{H}
    -[:-30]X
}

\end{document}

此代码返回错误:

Package chemfig Error: no atom found at position 2, pershaps you mispelled the optional argument of the bond.. }

消除数字 2 作为到达氧原子的论据解决了该问题,但左侧 XO 键的位置不正确:

\chemfig{
    X
    -[:30]^{18}\chemabove{O}{H}
    -[:-30]X
}

在此处输入图片描述

我尝试了一下,到目前为止我想到最好的办法是使用缩短的隐形 OH 键:

\chemfig{
    X
    -[:30,,,2]^{18}O(-[:90,0.3,2,,draw=none]H)
    -[:-30]X
}

在此处输入图片描述

不过,我发现后一种解决方案不太可靠和优雅。有没有办法继续使用\chemabove\chembelow与出发/到达原子编号参数一起使用?

答案1

我猜,您需要将 18 放入堆栈并使用将其边界框减小到零(在当前文档 [v1.33] 第 42 页中提供了\llap类似的示例):\rlap

\documentclass[border=5mm]{standalone}
\usepackage{chemfig}

\begin{document}

\chemfig{
    X
    -[:30]\chemabove{\llap{$^{18}$}O}{H}
    -[:-30]X
}

\end{document}

在此处输入图片描述

答案2

您应该使用|来启动第二个原子^{18}

\chemfig{
    X
    -[:30,,,2]^{18}|\chemabove{O}{H}
    -[:-30]X
}

相关内容