chemfig 连接处的双键间隙

chemfig 连接处的双键间隙

我正在使用 chemfig 绘制化学图形。但是,当将双键作为侧基绘制到碳链上时,会出现一点间隙。这种行为在 chemdraw 中有所不同,我认为它看起来更好。

在此处输入图片描述

这是我的母亲:

\documentclass[border=2pt]{standalone}
\usepackage{chemfig}

\usepackage{mathpazo}
\renewcommand*{\familydefault}{\sfdefault}
\renewcommand*{\printatom}[1]{\ensuremath{\mathsf{#1}}}

\setdoublesep{0.35700 em}  % 'Bond Spacing'
\setatomsep{1.478500 em}    % 'Fixed Length'
\setbondoffset{0.18265 em} % 'Margin Width'
\setbondstyle{line width = 0.06642 em}
\setbondstyle{thick,cap=round}

\begin{document}
    \chemfig{
        -[:30](=[2]O)-[:-30]
    }
\end{document}

我怎样才能消除这个间隙并将晶粒键“附着”到主链上?在这种情况下,绘制碳原子并不是理想的解决方案。

答案1

在一些帮助下我找到了解决方案:

 -[:30](=[2,,,,shorten <=-1pt]O)-[:-30]

那么这里发生了什么?第五个参数是 tikz-code。shorten是 tikz 命令,例如 \draw 命令中的线条,它将按指定量缩短线条的一端。当我们将量指定为负数时,它将使线条变长。通过该<=部分,我们可以选择两条线端中的一条,该线端应该缩短(或在本例中延长)。


或者另一个更短的代码:

-[:30](=#(-1pt)[2]O)-[:-30]

chemfig 手册对此进行了解释。可以使用 -command 直接更改键间距#()(请参阅手册第 2 节,不同类型的键)。请记住:如果在宏中使用,#可能会产生问题。


多一点手动挖掘可能会对我有帮助:-)

相关内容