I'm trying to get this kind of appearance for chemical structure (see highlighted regions):

enter image description here

By so far I could manage to do like this:

enter image description here

This is my code:

\setmainfont{Times New Roman} 

{\csname atom@\number\CF@cnt@atomnumber\endcsname}%
\setdoublesep{0.35700 em}  % 'Bond Spacing'
\setatomsep{1.78500 em}    % 'Fixed Length'
\setbondoffset{0.18265 em} % 'Margin Width'
\newcommand{\bondwidth}{0.06642 em} % 'Line Width'
\setbondstyle{line width = \bondwidth}
\begin{tikzpicture}[font=\small ,line width=1pt,node distance=1cm, inner sep=-0.05cm]
\node[anchor=north] at(0,0){ 
\chemfig{[:135]Ru?[o](-[,2.2]N*6([:80]=-=-*6(=<=>(-*6([:-120]-=(-*6(-=-(-*6(=*6(-=-=-)-=-*6(-=-=-)=-))=-=-))-=([:-80]-*6(=-=-*6(-=-[,,,,line width=2pt]=N?[o,{-}]-)=-))-N?[o,{-}]=))=)--))([:45]-[,2.2]N*6([:100]-*6(-(-*6([:-60]-N?[o,{-}]=([:-100]-*6(=*6(-N?[o,{-}]=-=-)-=<=>-))-=(-*6(=-=(-*6(-*6(-=-=-)=-=*6(-=-=-)-=))-=-))-=))=-@{tr}=-=)--=-[,,,,line width=2pt]=))}}{\textbf{\large 2}}
\chemmove{\draw[very thick,inner sep=0pt](tr)++(1cm,-.1cm)--++(0,2em)node[anchor=north west,yshift=-4mm]{$\sf \left(PF_{6}\right)_2$}--++(-2em,0);}
\path (0,.5)--++(2,0);
\path (0,-6.5)--++(1,0);

How I could achieve the appearance I want using chemfig?

  • Probably one possibility is a similar strategy like the one for delocalized double-bonds (the chemfig manual has an example)
    – cgnieder
    Oct 19, 2014 at 13:02

3 Answers 3


I'd draw the bold single bonds with the line-width command -[,,,,line width=2pt]. A bold double bond can be achieved by drawing a bold single bond backwards (angle = 180°) over the double bond: -[::180,,,,line width=2pt].

Here is an example:


\setbondstyle{line width=0.6pt}


\chemfig{*6(=(-[::180,,,,line width=2pt])-(*6(=-=(-NH_2)-(-*6(=(-NHTs)(-[::180,,,,line width=2pt])-[,,,,line width=2pt]=(-[::180,,,,line width=2pt])-(*6(=-=-=-))--))=-))--=(-[::180,,,,line width=2pt])-[,,,,line width=2pt])}


Example for structures with axial chirality

  • It is great, but still question is open. It is not exactly what should be achieved.
    – saldenisov
    Oct 20, 2014 at 8:34

I achieved a nice result. This is my commented code:

\pagestyle{empty} % required


        atom sep=15pt,
        double bond sep=2.6pt,
        bond join=true,
        cram width=3.0pt,
        cram dash width=0.75pt,
        cram dash sep=2.0pt

        Ru?[Ru] % central atom (with hook)
        % 1st moiety (left)
        (-[:180,3.25,,,dash pattern=on 2pt off 2pt] % long dashed bond to pyridyl  left ring
        N*6(=( % pyridyl ring
        -[::-45] % to avoid stay too close to Ru atom
        *6(=( % 1st 8-quinolyl ring (upper left benzene ring)
        *6(-N?[Ru,,{dash pattern=on 2pt off 2pt}]=-=-) % 8-quinolyl (pyridine ring, with hook to Ru bond)
        )-=<=( % 1st 8-quinolyl ring (continuation)
        -[::0,0.1,,,draw=none]-[::180,1.2,,,line width=2pt] % bold bond as a branch
        )>)) % 1st 8-quinolyl (end)
        -=(-R_{1})-= % pyridyl (continuation)
        (-[::-75] % to avoid stay too close to Ru atom
        *6(=-=-( % 2nd 8-quinolyl ring (lower left)
        *6(- % benzene ring
        (-[::60,1.01,,,line width=2pt]-[::60,1.01,,,line width=2pt]) % bold bond as a branch
        =-=N?[Ru,,{dash pattern=on 2pt off 2pt}] % 8-quinolyl (pyridine ring, with hook to Ru bond)
        (-[::180,1.05,,,line width=2pt])-))=-)) % bold N= bond as a branch
        -)) % Ending the 1st moiety
        % 2nd moiety (right, same as above)
        (-[:0.0,3.25,,,dash pattern=on 2pt off 2pt]
        *6(-N?[Ru,,{dash pattern=on 2pt off 2pt}]=-=-)
        -[::0,0.1,,,draw=none]-[::180,1.2,,,line width=2pt]
        (-[::60,1.01,,,line width=2pt]-[::60,1.01,,,line width=2pt])
        =-=N?[Ru,,{dash pattern=on 2pt off 2pt}]
        (-[::180,1.05,,,line width=2pt])-))=-))

The final result:

enter image description here


I am not really an expert on pgf and tikz so probably this can be done even better. But here is my solution, where I define a new style of the bond.

Inspired by Creating delocalized double bonds in chemfig without tikzset? and Passing parameters to \pgfdeclaredecoration



\state{initial}[width=0.5*\pgfdecoratedpathlength,next state=final]{%

\tikzset{myrbond/.style={decorate, decoration=halfbold}}
\tikzset{mylbond/.style={decorate, decoration={halfbold, mirror}}}





You can adjust the thickness in the line \pgfsetlinewidth{5\pgflinewidth} and the distance between the double bonds on lines


But I am really not sure, if this is a better (or nicer) solution that the one proposed by @dieg0

You must log in to answer this question.

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