我正在尝试借助乳胶中的化学图形包来绘制以下反应。 我无法弄清楚如何绘制 π 所对应的分子(最后五个分子中 Pt 通过某种键连接)。所以,请帮我完成以下任务:
- 编写适当的乳胶代码以正确绘制上图中的反应。
- 如何以类似上图的方式在反应的左侧包含“Gas”和“Ads”。
\documentclass{scrartcl}
\usepackage{chemfig,mlmodern}
\begin{document}
\noindent
\schemestart
\chemfig{[:30]*6(------)}
\arrow{<=>[*{0}--H][*{0}+H]}[-90]
\chemname{\chemfig{(-[::90,0.4])(-[::180,0.4])-(-[::-112.5,0.4])(-[::67.5,0.4])-[::-45](-[::-112.5,0.4])(-[::67.5,0.4])-[::-45](-[::0,0.4]Pt)(-[::90,0.4])-[::-90](-[::-112.5,0.4])(-[::67.5,0.4])-[::-45](-[::-112.5,0.4])(-[::67.5,0.4])-[::-45]}}{$\alpha$}
\arrow(.0 --.base west){<=>[--H][+H]}
\chemname[-5ex]{\chemfig{[:45](-[::90,0.4])(-[::180,0.4])-(-[::-112.5,0.4])(-[::67.5,0.4])-[::-45](-[::-112.5,0.4])(-[::67.5,0.4])-[::-45](-[::0,0.4])(-[::90,0.4])-[::-90](-[::-112.5,0.4])(-[::67.5,0.4]Pt)-[::-45](-[::-112.5,0.4])(-[::67.5,0.4]Pt)-[::-45]}}{$\beta \alpha$}
\arrow(.base east--.base west){<=>[--H][+H]}
\chemname[-5ex]{\chemfig{[:45](-[::90,0.4])(-[::180,0.4])-(-[::-112.5,0.4])(-[::67.5,0.4])-[::-45](-[::-112.5,0.4])(-[::67.5,0.4])-[::-45](-[::0,0.4])(-[::90,0.4])-[::-90]-[::-45]-[::-45]}}{$\pi$}
\schemestop
\end{document}
但我创建它的方式感觉像是一种黑客行为,而不是正确的解决方案。
答案1
我创建了一个“独立”文档,这将生成一个可以插入到另一个文档中的 PDF 图形。我没有使用 \chemname,因为使用此命令,分子的名称将成为分子的一部分,这使得定位分子变得困难。为了放置名称,我在分子上放置了标记 (@{}),并使用方框 \parbox 创建了不可见的箭头。分子的设计略有不同,但我认为效果不错。
要知道哪个分子是 C4,请启用 \setchemfig{scheme debug=true}
\documentclass[border=2mm]{standalone}
\usepackage{chemfig,mlmodern}
%to make double-pointed bonds
\usetikzlibrary{decorations.pathmorphing}
\pgfdeclaredecoration{ddbond}{initial}
{
\state{initial}[width=4pt]
{
\pgfpathlineto{\pgfpoint{4pt}{0pt}}
\pgfpathmoveto{\pgfpoint{2pt}{2pt}}
\pgfpathlineto{\pgfpoint{4pt}{2pt}}
\pgfpathmoveto{\pgfpoint{4pt}{0pt}}
}
\state{final}
{
\pgfpathlineto{\pgfpointdecoratedpathlast}
}
}
\tikzset{lddbond/.style={decorate,decoration=ddbond}}
\tikzset{rddbond/.style={decorate,decoration={ddbond,mirror}}}
\begin{document}
% \setchemfig{scheme debug=true}
\schemestart
\chemfig{[:30]*6(------)}
%
\arrow(--){<=>[*{0}--H][*{0}+H]}[-90]
%
\chemfig[cram width=2pt]{?(-[3,0.4])(-[5,0.4])<[7,0.7](-[2,0.4])(-[6,0.4])-[@{a}0,,,,line width=2pt](-[2,0.4])(-[6,0.4])>[1,0.7](-[1,0.4])(-[7,0.4])-[3,0.7](-[2,0.4])(-[6,0.4])-[4]?(-[2,0.4])(-[6,0.4])}
%
\arrow( --.mid west){<=>[$-$H][+H]}
%
\chemfig[cram width=2pt]{?(-[3,0.4])(-[5,0.4])<[7,0.7](-[2,0.4])(-[6,0.4]Pt)-[@{b}0,,,,line width=2pt](-[2,0.4])(-[6,0.4]Pt)>[1,0.7](-[1,0.4])(-[7,0.4])-[3,0.7](-[2,0.4])(-[6,0.4])-[4]?(-[2,0.4])(-[6,0.4])}
%
\arrow(.base east--.base west){<=>[--H][+H]}
%
\chemfig[cram width=2pt]{?(-[3,0.4])(-[5,0.4])<[7,0.7]-[0,.5,,,line width=1pt,lddbond](-[2,.4])(-[6,.4]@{c}Pt)-[0,.5,,,line width=1pt,lddbond]>[1,0.7]@{x}(-[1,0.4])(-[7,0.4])-[3,0.7](-[2,0.4])(-[6,0.4])-[4]?(-[2,0.4])(-[6,0.4])}
%
\arrow(c4 --){<=>}[90]
%
\chemfig{[:30]*6(=-----)}
%
\arrow(@{x}--){<=>[$-$H][+H]}[0]
%----------------------------------------------------
\arrow(@{a}--){0}[290,.6]\parbox{1cm}{$\alpha$}
\arrow(@{b}--){0}[290,.5]\parbox{1cm}{$\beta\alpha$}
\arrow(@{c}--){0}[300,.2]\parbox{1cm}{$pi$}
\schemestop
\end{document}