I want to typeset a small reaction above a reaction arrow inside a scheme. Putting a \subscheme{} into the first of argument of \arrow unfortunately breaks the layout. Should I just try to position the nodes it manually inside a tikzpicture?

The main arrow and the reaction under the arrow in this example basically illustrate what I'm trying to achieve, the difference being that I want the reaction to be above the arrow (flipped horizontally) Example

Current attempt:


\section*{Arrow with empty labels}

\arrow(.base east--.base west){->[][][-10mm]}[,2]

\section*{Arrow with subscheme in top label}
\arrow(.base east--.base west){->[
\subscheme{ \chemfig{C}\arrow \chemfig{D} }



  • 1
    You should really posta minimal (non) working example from \documentclass{…} to \end{document}. That way, helping is much more easier.
    – Manuel
    Commented May 1, 2014 at 23:34
  • okay, I boiled it down Commented May 2, 2014 at 7:17

1 Answer 1


As I understand the question, the problem is in the "label" of the arrow and how to do the "circle" with arrows. One way to do this is to play with the properties of chemmove and the arrows.

For example:

\chemfig{First molecule}
\chemname[24pt]{\chemfig{N@{st1}ADH}}{\scriptsize \parbox[c]{40pt}{\centering ammonium formate}}
\chemmove{\draw[->,shorten <=5pt, shorten >=5pt](st1) .. controls +(+50:8mm) and +(+130:8mm)..(en1);}
\chemmove{\draw[->,shorten <=5pt, shorten >=5pt](en1) .. controls +(-130:8mm) and +(-50:8mm)..(st1);}
\chemmove{\draw[->,shorten <=5pt, shorten >=5pt,transform canvas={yshift=-32pt}](st1) .. controls +(+50:8mm) and +(+130:8mm)..(en1);}
\chemfig{second molecule}

Note that maybe further adjusting of the spaces is required.

You must log in to answer this question.

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