减少 chemfig 中的箭头边距

减少 chemfig 中的箭头边距

我试图让带有 chemfig 图案的图形适合我的列。我无法使用 scalebox 缩放整个图形,因为使用 \chemname{} 设置的文本也会缩放。

在此处输入图片描述

\setatomsep{1.2em}
\setbondoffset{0.1em} % 'Margin Width'
\setarrowdefault{,0.6,}


\definesubmol{hydroxy}[HO]{OH}

\definesubmol{foo}{
    -[::180,2,,,dash pattern=on 2pt off 2pt]O
    -[::60]
    =[::-60]
    -[::60](-[::-60]R)
    =[::60]
    -[::60](-[::-60]!{hydroxy})
    =[::60](
        -[::-60]O
        -[::60,1.5,,,dash pattern=on 2pt off 2pt]
    )
    -[::60]
}

\definesubmol{bar}{
    -[::180,2,,,draw=none]!{hydroxy}
    -[::60]
    =[::-60]
    -[::60](-[::-60]R)
    =[::60]
    -[::60](-[::-60]!{hydroxy})
    =[::60](
        -[::-60]!{hydroxy}
    )
    -[::60]
}

\schemestart
\chemname{
\chemfig[][scale=.5]{
    Fe
    (!{foo})
    ([::120]!{bar})
    ([::240]!{bar})
}
}{Mono}
\arrow{<=>[pH]}
\chemname{
\chemfig[][scale=.5]{
    Fe
    (!{foo})
    ([::120]!{foo})
    ([::240]!{bar})
}
}{Bis}
\arrow{<=>[pH]}
\chemname{
\chemfig[][scale=.5]{
    Fe
    (!{foo})
    ([::120]!{foo})
    ([::240]!{foo})
}
}{Tris}
\schemestop

我想减少箭头两侧的间距,以便留下更多空间来缩放分子,或者为“pH”文本腾出更多空间。

答案1

我设法利用 clemens 的评论和 chemfig 手册的一些帮助来做到这一点。

我添加了以下几行:

\setcompoundsep{1.5em}
\setarrowoffset{1pt}

结果如下:

在此处输入图片描述

\setatomsep{1.2em}
\setbondoffset{0.1em}
\setcompoundsep{1.5em}
\setarrowoffset{1pt}

\definesubmol{hydroxy}[HO]{OH}

\definesubmol{foo}{
    -[::180,2,,,dash pattern=on 2pt off 2pt]O
    -[::60]
    =[::-60]
    -[::60](-[::-60]R)
    =[::60]
    -[::60](-[::-60]!{hydroxy})
    =[::60](
        -[::-60]O
        -[::60,1.5,,,dash pattern=on 2pt off 2pt]
    )
    -[::60]
}

\definesubmol{bar}{
    -[::180,2,,,draw=none]!{hydroxy}
    -[::60]
    =[::-60]
    -[::60](-[::-60]R)
    =[::60]
    -[::60](-[::-60]!{hydroxy})
    =[::60](
        -[::-60]!{hydroxy}
    )
    -[::60]
}

\schemestart
\chemname{
\chemfig[][scale=.6]{
    Fe
    (!{foo})
    ([::120]!{bar})
    ([::240]!{bar})
}
}{Mono}
\arrow{<=>[pH]}
\chemname{
\chemfig[][scale=.6]{
    Fe
    (!{foo})
    ([::120]!{foo})
    ([::240]!{bar})
}
}{Bis}
\arrow{<=>[pH]}
\chemname{
\chemfig[][scale=.6]{
    Fe
    (!{foo})
    ([::120]!{foo})
    ([::240]!{foo})
}
}{Tris}
\schemestop

相关内容