[Tex/LaTex] How to rotate arrows, write text on it and then position the text correctly

arrowsrotating

I know it's a little localized, but bear with me as I need to know how to do this. Here's an image of what I have to do: enter image description here

So as you can see I have to draw these lines. I know how to add text on them and how to rotate them (\turn), but how can I position the second line text correctly?

UPDATE: I also need to have double arrows like this:
enter image description here

Best Answer

Since you seem to be waiting for a tikz-cd-solution (Thanks to Bernard for typing all the formulae from your drawing):

% arara: pdflatex

\documentclass{article}
\usepackage{tikz-cd}
\usepackage{mhchem}

\begin{document}    
    \begin{tikzcd}[row sep=0.6cm]
        \ce{Cr} \arrow{r}{1} & \ce{Cr2O3} \arrow{r} \arrow{dr}[swap]{5} & \ce{CrCl3} \arrow{r}{3} & \ce{Cr(OH)3} \arrow{dl} \arrow{r}{4} \arrow{d}{7} & \ce{Cr2O3}\\
        & &\ce{KCrO2} \arrow{r}{6} & \ce{Cr(NO3)3} &
    \end{tikzcd}    
\end{document}

enter image description here

If you want to rotate the number 5 to the same angle of the arrow, you may write \arrow{dr}[swap,sloped]{5}.


Edit:

For your second picture:

\documentclass{article}
\usepackage{tikz-cd}
\usepackage{mhchem}

\begin{document} 
    \[   
    \begin{tikzcd}
        \ce{Al2(SO4)3} \arrow[shift left]{r}{2} & \ce{Al(OH)3} \arrow[shift left]{l}{7} 
    \end{tikzcd} 
    \]   
\end{document}

enter image description here

Related Question