将 chemfig 箭头与 mhchem 箭头样式相匹配

将 chemfig 箭头与 mhchem 箭头样式相匹配

我确实需要将整个文档的所有箭头默认设置为 TikZ 隐形箭头或类似箭头。箭头样式必须一致,长度和间距不是真正的问题。我的大多数反应都用 编码mhchem,而其他一些反应则用 编码chemfig。目前我不能简单地用一个替换另一个。

我已经尝试为两个包设置箭头选项,但似乎无法匹配它们。

箭头的差异

\documentclass{article}
\usepackage[T1]{fontenc}        
\usepackage[utf8]{inputenc}

\usepackage{chemfig}            
%\setarrowdefault{,,,stealth}

\usepackage[version=4,arrows=pgf-filled]{mhchem}

\begin{document}


\ce{Nb(OH)5 + Nb(OR)5 -> Nb2O5 + 5HOR}
\bigskip

\chemfig{Nb{(}OH{)}_{5} \chemsign{+} Nb{{(}}OR{)}_{5} \chemrel{->} Nb_{2}O_{5} \chemsign{+} 5HOR}

\bigskip

\schemestart
\setatomsep{2em}\chemfig{Nb(-[:45]Cl)(-[:-45]Cl)(-[:135])(-[:180])(-[:225])} \chemsign{+} \chemfig{C_{2}H_{6}O_{2}} \arrow \setatomsep{2em}\chemfig{Nb(-[:45]O)(-[:-45]O)(-[:135])(-[:180])(-[:225])} 
\schemestop


\end{document}

编辑:我设法根据以下方法获得近似结果这个答案

\newcommand\MyArrowTip{Stealth[scale=0.77,round]}
\makeatletter
\definearrow3{->}{%
    \CF@arrow@shift@nodes{#3}%
    \expandafter\draw\expandafter[\CF@arrow@current@style,-\MyArrowTip](\CF@arrow@start@node)--(\CF@arrow@end@node);%
    \CF@arrow@display@label{#1}{0}+\CF@arrow@start@node{#2}{0}-\CF@arrow@end@node
}
\makeatother

这两个箭头看起来仍然不同,我不是 pgf 专家,所以也许我遗漏了一些东西。

答案1

我刚刚上传了 mhchem 4.03(2015-11-29),它将在接下来的几天内进入 CTAN 服务器。有了它,您将能够使用任何 PGF 箭头(只要它的尺寸合理)。例如:

\usepackage[version=4,arrows=pgf{Kite[length=0pt 4,width'=0pt 1]}{0.15ex}]{mhchem}

相关内容