2

The reaction scheme shown below is to long to fit in one line. I would like to place the two left compounds atop one another, so the + is in the middle between them, vertically centered with the arrow.

enter image description here

MWE:

\documentclass[10pt,a4paper]{article}
\usepackage[left=32.5mm, right=25mm, showframe]{geometry}
\usepackage[version=4]{mhchem}
\usepackage{chemfig}
    \setchemfig{fixed length=true, atom sep=1.5em, arrow offset=6pt}
    \def\x{\vphantom{C}}

\begin{document}

\setchemfig{arrow coeff=1.65}
\centering\small
\schemestart
    \chemfig{\x-[@{li}]N(-[2]H)-\x|{(}CH_2{)}_{11}|\x-C(=[6]O)-[@{re}]}
    \polymerdelim[delimiters={[]},height=25pt,depth=29pt]{li}{re}
    \+
    \chemfig{\x-[@{li}]N(-[2]H)-\x|{(}CH_2{)}_{11}|\x-C(=[6]O)-[@{re}]}
    \polymerdelim[delimiters={[]},height=25pt,depth=29pt,indice=m]{li}{re}
    \arrow{<->>[$T$, $t$, $\Delta p_{\ce{H2O}}$][]}
    \chemfig{\x-[@{li}]N(-[2]H)-\x|{(}CH_2{)}_{11}|\x-C(=[6]O)-[@{re}]}
    \polymerdelim[delimiters={[]},height=25pt,depth=29pt,indice=n+m]{li}{re}
    \+
    \chemfig{H_2O} \
\schemestop

\end{document}

EDIT: As @leandriis pointed out, simply putting the arrow text in a \parbox, such as in this question, solves the issue.

EDIT 2: I forgot to add a H and a OH group at the sides on all molecules, making them even longer. Thus, the original issue still exists and is even worse.

MWE 2:

\setchemfig{arrow label sep=5pt}
\centering\small
\schemestart
    \chemfig{\x H-[@{li}]N(-[2]H)-\x|{(}CH_2{)}_{11}|\x-C(=[6]O)-[@{re}]OH}
    \polymerdelim[delimiters={[]},height=25pt,depth=29pt]{li}{re}
    \+
    \chemfig{\x H-[@{li}]N(-[2]H)-\x|{(}CH_2{)}_{11}|\x-C(=[6]O)-[@{re}]OH}
    \polymerdelim[delimiters={[]},height=25pt,depth=29pt,indice=m]{li}{re}
    \arrow{<->>[\parbox{5cm}{\centering $T$, $t$,\\$\Delta p_{\ce{H2O}}$}][]}
    \chemfig{\x H-[@{li}]N(-[2]H)-\x|{(}CH_2{)}_{11}|\x-C(=[6]O)-[@{re}]OH}
    \polymerdelim[delimiters={[]},height=25pt,depth=29pt,indice=n+m]{li}{re}
    \+
    \chemfig{H_2O}
\schemestop

enter image description here

2
  • 2
    Probably you could introduce a linebreak in the text above the arrow (see: tex.stackexchange.com/q/113138/134144) and keep the whole reaction in a single line.
    – leandriis
    Commented Apr 16, 2020 at 12:21
  • that's much easier, thanks!
    – fuj36840
    Commented Apr 16, 2020 at 12:47

1 Answer 1

3

Using a vertical \subscheme and invisible arrows it is rather easy:

\documentclass[10pt,a4paper]{article}
\usepackage[left=32.5mm, right=25mm, showframe]{geometry}
\usepackage[version=4]{mhchem}
\usepackage{chemfig}

\setchemfig{fixed length=true, atom sep=1.5em, arrow offset=6pt}

\begin{document}

\begin{center}
  \def\x{\vphantom{C}}
  \setchemfig{arrow label sep=5pt}
  \small
  \schemestart
      \subscheme[-90]{%
      \chemfig{\x H-[@{li}]N(-[2]H)-\x|{(}CH_2{)}_{11}|\x-C(=[6]O)-[@{re}]OH}
      \polymerdelim[delimiters={[]},height=25pt,depth=29pt]{li}{re}
      \arrow{0}[,.3]
      \+{0pt,1em}
      \arrow{0}[,.3]
      \chemfig{\x H-[@{li}]N(-[2]H)-\x|{(}CH_2{)}_{11}|\x-C(=[6]O)-[@{re}]OH}
      \polymerdelim[delimiters={[]},height=25pt,depth=29pt,indice=m]{li}{re}
    }
    \arrow{<->>[{\begin{tabular}{c}$T$, $t$,\\$\Delta p_{\ce{H2O}}$\end{tabular}}][]}
    \chemfig{\x H-[@{li}]N(-[2]H)-\x|{(}CH_2{)}_{11}|\x-C(=[6]O)-[@{re}]OH}
    \polymerdelim[delimiters={[]},height=25pt,depth=29pt,indice=n+m]{li}{re}
    \+
    \chemfig{H_2O}
  \schemestop
\end{center}

\end{document}

enter image description here

You must log in to answer this question.

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