2

How to draw a double arrow in chemfig scheme: description

1 Answer 1

6

You can define your own new arrow type =retro> as shown in the following MWE. Text above and below the arrow can be added using the first two optional arguments as described in section 9 of the chemfig manual.

enter image description here

\documentclass{article}

\usepackage{chemfig}

\catcode`\_=11
\definearrow3{=retro>}{%
    \CF_arrowshiftnodes{#3}%
    \draw[double distance=2pt, -Implies] (\CF_arrowstartnode)--(\CF_arrowendnode);
    \expandafter[\CF_arrowcurrentstyle](\CF_arrowstartnode)--(\CF_arrowendnode);%
    \CF_arrowdisplaylabel{#1}{0.5}+\CF_arrowstartnode{#2}{0.5}-\CF_arrowendnode
}
\catcode`\_=8

\begin{document}

\schemestart
 A \arrow{=retro>} B
\schemestop

\schemestart
 A \arrow{=retro>[above][below]} B
\schemestop

\end{document}

MWE which works with oder versions of chemfig, previous to version 1.4:

\documentclass{article}

\usepackage{chemfig}

\makeatletter
\definearrow3{=retro>}{%
    \CF@arrow@shift@nodes{#3}%
    \draw[double distance=2pt, -Implies] (\CF@arrow@start@node)--(\CF@arrow@end@node);
    \expandafter[\CF@arrow@current@style](\CF@arrow@start@node)--(\CF@arrow@end@node);%
    \CF@arrow@display@label{#1}{0.5}+\CF@arrow@start@node{#2}{0.5}-\CF@arrow@end@node
}
\makeatother

\begin{document}

\schemestart
 A \arrow{=retro>} B
\schemestop

\schemestart
 A \arrow{=retro>[above][below]} B
\schemestop
    
\end{document}

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .