1

Im trying to get a figure with a chemfig drawing to fit in my column. I cannot scale the entire figure with scalebox, as the text set with \chemname{} will be scaled too.

enter image description here

\setatomsep{1.2em}
\setbondoffset{0.1em} % 'Margin Width'
\setarrowdefault{,0.6,}


\definesubmol{hydroxy}[HO]{OH}

\definesubmol{foo}{
    -[::180,2,,,dash pattern=on 2pt off 2pt]O
    -[::60]
    =[::-60]
    -[::60](-[::-60]R)
    =[::60]
    -[::60](-[::-60]!{hydroxy})
    =[::60](
        -[::-60]O
        -[::60,1.5,,,dash pattern=on 2pt off 2pt]
    )
    -[::60]
}

\definesubmol{bar}{
    -[::180,2,,,draw=none]!{hydroxy}
    -[::60]
    =[::-60]
    -[::60](-[::-60]R)
    =[::60]
    -[::60](-[::-60]!{hydroxy})
    =[::60](
        -[::-60]!{hydroxy}
    )
    -[::60]
}

\schemestart
\chemname{
\chemfig[][scale=.5]{
    Fe
    (!{foo})
    ([::120]!{bar})
    ([::240]!{bar})
}
}{Mono}
\arrow{<=>[pH]}
\chemname{
\chemfig[][scale=.5]{
    Fe
    (!{foo})
    ([::120]!{foo})
    ([::240]!{bar})
}
}{Bis}
\arrow{<=>[pH]}
\chemname{
\chemfig[][scale=.5]{
    Fe
    (!{foo})
    ([::120]!{foo})
    ([::240]!{foo})
}
}{Tris}
\schemestop

I would like to reduce the spacing on each side of the arrows so it leaves some more space for either scaling the molecules, or making more room for the "pH" text.

2
  • 1
    If you're using chemfig's \schemestart ... \arrow ... \schemestop then \setarrowoffset{<dim>} is what you want
    – cgnieder
    Nov 21, 2015 at 17:32
  • Thanks for the help @clemens, you pointed me in the right direction. Nov 21, 2015 at 17:57

1 Answer 1

2

I managed to do this using clemens' comment, and some help from the chemfig manual.

I added the follow lines:

\setcompoundsep{1.5em}
\setarrowoffset{1pt}

And the result:

enter image description here

\setatomsep{1.2em}
\setbondoffset{0.1em}
\setcompoundsep{1.5em}
\setarrowoffset{1pt}

\definesubmol{hydroxy}[HO]{OH}

\definesubmol{foo}{
    -[::180,2,,,dash pattern=on 2pt off 2pt]O
    -[::60]
    =[::-60]
    -[::60](-[::-60]R)
    =[::60]
    -[::60](-[::-60]!{hydroxy})
    =[::60](
        -[::-60]O
        -[::60,1.5,,,dash pattern=on 2pt off 2pt]
    )
    -[::60]
}

\definesubmol{bar}{
    -[::180,2,,,draw=none]!{hydroxy}
    -[::60]
    =[::-60]
    -[::60](-[::-60]R)
    =[::60]
    -[::60](-[::-60]!{hydroxy})
    =[::60](
        -[::-60]!{hydroxy}
    )
    -[::60]
}

\schemestart
\chemname{
\chemfig[][scale=.6]{
    Fe
    (!{foo})
    ([::120]!{bar})
    ([::240]!{bar})
}
}{Mono}
\arrow{<=>[pH]}
\chemname{
\chemfig[][scale=.6]{
    Fe
    (!{foo})
    ([::120]!{foo})
    ([::240]!{bar})
}
}{Bis}
\arrow{<=>[pH]}
\chemname{
\chemfig[][scale=.6]{
    Fe
    (!{foo})
    ([::120]!{foo})
    ([::240]!{foo})
}
}{Tris}
\schemestop

You must log in to answer this question.

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