Comment mettre en forme des formules chimiques?
En dépannage, il est encore mieux de bricoler quelque chose qui apparaîtra en romains, par exemple comme ça:
La combustion de CH$_4$ donne H$_2$O et CO$_2$.
(Mais il reste beaucoup plus propre d'utiliser un package adapté. Lisez ci-dessous.)
Il existe des packages pour écrire
- les équations de réaction: mhchem, chemmacros (et chemformula) notamment;
- d'autres pour représenter des structures de molécules (organiques): chemfig notamment. Ces packages conviennet pour de petites structures, certainement moins pour un usage intensif.
Le package chemfig permet de représenter des structures chimiques à l'aide de TikZ. Il est maintenu et semble le plus utilisé.
Les packages chemmacros et chemformula permettent notamment d'écrire des réactions chimiques.
Le package ppchtex permet d'écrire des formules chimiques. L'exemple ci-dessous présente son utilisation avec et babel:
\nonfrench
de French Pro
ou la commande \selectlanguage
de babel qui aura alors été
appelé avec les deux options de package francais
et english
.
Le package mcf2graph utilise le Molecular Coding Format pour décrire les structures chimiques de façon très compacte, puis les dessiner.
Les utilisateurs de Windows peuvent utiliser MDL Isis Draw qui est gratuit pour toute utilisation personnelle ou académique. Ce logiciel permet de créer ses propres structures et de les sauver au format EPS. Il est disponible à: http://www.mdli.com/downloads/downloadable/index.jsp.
Les utilisateurs de Linux peuvent jeter un coup d'œil à http://www.randomfactory.com/lfc/lfc.html.
Il existe le package chemsym.
Le package XyMTeX permet de définir des structures chimiques.
- XyMTeX est incompatible avec le shareware French Pro de Bernard Gaulle. Pour utiliser les deux dans un même document, il suffit de repasser en mode
english
avant la macros puisfrench
après. Je ne sais pas comment cela fonctionne pour lescaption
mais en théorie, cela devrait marcher ! TODO: à verifier pour Babel french. - XyMTeX possède le gros défaut de ne pas pouvoir faire de longues chaînes aliphatiques si l'on ne sait pas programmer le nombre de points entre deux structures. Le plus simple dans ce cas est donc l'emploi de
Xfig
(ou autre); - on ne peut pas imbriquer les formules, ce qui gêne considérablement son utilisation; en revanche, pour les cholestérols l'ensemble est très puissant !