反应机构垂直排列

反应机构垂直排列

如何在 chemfig 中对齐阿司匹林合成的以下反应机制?

代码:

\schemestart
\definesubmol\nobond{-[2,0.2,,,draw=none]}
\chembelow[5mm]{\chemfig[][scale=0.7]{HO-[:-30]@{5}(!\nobond\scriptstyle\oplus)(-[:-90]CH_3)(-[@{2}:30]O-[:-30](-[:-90]CH_3)=[:30]O)}}{\chembelow[5mm]{+}{\chemfig[][scale=0.7]{*6(=-=(-([:90]=O)([:-40]-OH))-(-@{4}O@{3}H)=-)}}}
\qquad\qquad
\arrow(.base east--.base west){->[\tiny\chemfig{{-}CH_3COOH}][][4pt]}
\chemfig[][scale=0.7]{*6(=-=(-([:90]=O)([:-40]-OH))-(-O-[:-210](-[:90]@{7}O-[@{6}:360]H)(-[:210]CH_3))=-)}
\chemmove[->,shorten <=2pt]{
    \draw[shorten >=8pt](2)..controls +(-50:2.5cm)and+(45:1cm)..(3);}
\chemmove[->,shorten <=2pt]{
    \draw[shorten >=3pt](4)..controls +(180:1cm)and+(-135:1cm)..(5);}
\chemmove[->,shorten <=2pt]{
    \draw[shorten >=5pt](6)..controls +(90:5mm)and+(90:5mm)..(7);}
\arrow{->[\tiny\chemfig{{-}\chemabove{H}\oplus}]}
\chemfig[][scale=0.7]{*6(=-=(-([:90]=O)([:-40]-OH))-(-O-[:-210](=[:90]O)(-[:210]CH_3))=-)}
\schemestop

谢谢您的回答!

实际状态下的反应机理

答案1

这个怎么样:

\documentclass{article}

\usepackage{chemfig}
\definesubmol\nobond{-[2,0.2,,,draw=none]}

\begin{document}

\schemestart
  \subscheme[-90]{
    \chemfig[atom style={scale=0.7}]{
      HO-[:-30]@{5}(!\nobond\scriptstyle\oplus)(-[:-90]CH_3)(-[@{2}:30]O
      -[:-30](-[:-90]CH_3)=[:30]O)
    }
    \arrow{0[+][][-10pt]}
    \chemfig[atom style={scale=0.7}]{*6(=-=(-([:90]=O)([:-40]-OH))-(-@{4}O@{3}H)=-)}
  }
  \arrow{->[\tiny\chemfig{{-}CH_3COOH}]}[,1.5]
  \chemfig[atom style={scale=0.7}]{
    *6(=-=(-([:90]=O)([:-40]-OH))-(-O-[:-210](-[:90]@{7}O-[@{6}:360]H)(-[:210]CH_3))=-)
  }
  \arrow{->[\tiny\chemfig{{-}\chemabove{H}\oplus}]}
  \chemfig[atom style={scale=0.7}]{
    *6(=-=(-([:90]=O)([:-40]-OH))-(-O-[:-210](=[:90]O)(-[:210]CH_3))=-)
  }
\schemestop
\chemmove[->,shorten <=2pt]{
  \draw[shorten >=8pt](2)..controls +(-50:2.5cm)and+(45:1cm)..(3);
  \draw[shorten >=3pt](4)..controls +(180:1cm)and+(-135:1cm)..(5);
  \draw[shorten >=5pt](6)..controls +(90:5mm)and+(90:5mm)..(7);
}

\end{document}

在此处输入图片描述


尽管箭头标签的缩放比例和\tiny字体大小都经过调整,但该方案仍然超出了页面宽度。我个人会尝试使用chemfigatom sepbond offset),但也许会选择更大的字体大小\footnotesize。(下面的示例中showframe显示了页面尺寸。)

该示例使用chemmacros包(也加载了chemformula包)。它提供了并提供了将公式中的所有电荷()打印为正式电荷()\scrp的可能性chemformula\ch\chemsetup{ charges/circled = all }

\documentclass{article}

\usepackage{chemfig,chemmacros,showframe}
\definesubmol\pchargeup{-[2,0.4,,,draw=none]\scrp}
\definesubmol\pchargedown{-[6,0.4,,,draw=none]\scrp}

\begin{document}

\begin{center}
  \chemsetup{charges/circled=all}
  \setchemfig{atom sep = 1.7em , bond offset = 0.5pt}
  \footnotesize
\schemestart
  \subscheme[-90]{
    \chemfig{
      HO-[:-30]@{C1}(!\pchargeup)
      (-[:-90]CH_3)
      (-[@{b}:30]O-[:-30](-[:-90]CH_3)=[:30]O)
    }
    \arrow{0[+][][-10pt]}
    \chemfig{*6(=-=(-([:90]=O)([:-40]-OH))-(-@{OH}OH)=-)}
  }
  \arrow{->[${}-\ch{CH3COOH}$]}[,1.7]
  \chemfig{
    *6(
      =-=(-([:90]=O)([:-40]-OH))
      -(-O-[:-210]@{C2}(-[:90]O-[@{H}:360]H)(!\pchargedown)-[:210]CH_3)
      =-
    )
  }
  \arrow{->[${}-\ch{H+}$]}
  \chemfig{*6(=-=(-([:90]=O)([:-40]-OH))-(-O-[:-210](=[:90]O)(-[:210]CH_3))=-)}
\schemestop
\chemmove[red,-el,shorten <=2pt,shorten >=2pt]{
  \draw[shorten >=8pt] (b) ..controls +(-50:2.5cm) and +(10:1cm)  .. (OH) ;
  \draw (OH)..controls +(180:1cm)   and +(-135:1cm).. (C1) ;
  \draw (H) ..controls +(-90:3mm)   and +(30:5mm)  .. (C2) ;
}
\end{center}

\end{document}

在此处输入图片描述

相关内容