Qu’est-ce que MetaPost ?#
Le système MetaPost
(de John Hobby) implémente un langage de dessin d’images très semblable à celui de MetaFont : la différence est que MetaPost
produit des fichiers graphiques vectoriels au lieu de bitmaps. Les formats de sortie disponibles sont PostScript, png, et SVG. Une grande partie du code source de MetaPost vient des sources de MetaFont
, avec la permission de Donald Knuth.
Vers 2007, MetaPost
a été séparé en un programme frontal et une bibliothèque nommé MPlib
(qui a ensuite été liée à LuaTeX) par Taco Hoekwater. Cela donne à LuaTeX
certaines capacités graphiques et constitue une alternative aux extensions de dessin telles que TikZ et PSTricks.
MetaPost
est un langage puissant pour produire des figures pour des documents à imprimer sur des imprimantes PostScript, que ce soit directement ou par incorporation dans des documents TeX ou LaTeX. MetaPost
est capable d’intégrer du texte et des mathématiques, balisés pour une utilisation avec TeX, dans les graphiques. Pour sa part, Donald Knuth n’utilise MetaPost
que pour les diagrammes dans les textes qu’il écrit.
Bien que pdfLaTeX
ne puisse généralement pas gérer des graphiques PostScript, une sortie de MetaPost
est suffisamment simple et normée pour que pdfLaTeX
puisse la gérer directement, en utilisant du code emprunté à Comment insérer des images avec pdfLaTeX ? ».
De plus avec des packages comme luamplib ou minim-mp, il est tout à fait aisé de coder des figures en MetaPost directement (et nativement) dans un source Lua(La)TeX. On pourra utiliser aussi gmp pour faire de même avec pdfLaTeX (cela nécessitant cependant un appel à --shell-escape
).
Il existe une liste de diffusion traitant de MetaPost
. Vous pouvez vous y abonner par l’interface « Mailman » du TUG. Le site web du TUG héberge également une page dédiée à MetaPost. Le document tex-overview vous donne également des informations (et quelques documents explicatifs de base).
L’association GUTenberg a mis en place un site présentant de nombreux exemples de dessins produit avec MetaPost avec le code associé : https://metapost.gutenberg-asso.fr.
Sources
MetaPost sur Syracuse : Manuels & tutoriaux, Exemples (en français).