Qu’est-ce qu’est MetaPost ?
Le système MetaPost (créé par John Hobby) implémente un langage de description de graphiques qui ressemble beaucoup à MetaFont. MetaFont et MetaPost ont en commun la quasi totalité du langage, mais MetaFont permet de produire des fichiers de fontes matricielles (raster font), alors que MetaPost permet de produire un fichier vectoriel (PS, PDF, SVG).
C’est un langage puissant de production de graphiques qui peuvent être imprimés directement ou incorporés dans des documents (La)TeX (depuis LuaTeX, il est même intégré au moteur luatex). Il permet d’insérer du texte formaté avec (La)TeX dans les graphiques.
Knuth a déclaré n’utiliser que MetaPost pour produire les diagrammes des textes qu’il écrit.
Une bonne partie du code source de MetaPost a été copié, avec la permission de Knuth, des sources de MetaFont.
Le site de développement de MetaPost permet de suivre l’évolution du logiciel.
On trouve MetaPost dans toutes les bonnes distributions TeX.
Liens utiles
- metapost@tug.org (archive) liste de discussion internationale (en) sur MetaPost (et MetaFont)
- La page de MetaPost sur le site du TUG
- MetaPost Previewer de Troy Henderson, (EN), un site où l’on peut tester du code MetaPost, le compiler et en télécharger une sortie PNG ou SVG.
- Le CTAN contient dans tex-archive/info/metapost/examples/ des exemples de code MetaPost que l’on peut également voir en ligne, avec le graphique obtenu.
- Syracuse où l’on trouve beaucoup d’exemples. Il y a aussi une galerie où figure un nombre impressionnant d’illustrations faites avec MetaPost. Ce site est aussi riche en animations réalisées avec MetaPost. C’est aussi sur ce site qu’on trouve les séries de macros
geometriesyr
etmp-solid
- Le dépot Github metapost-examples de Toby Thurston qui met à disposition de superbes reproductions (et leurs codes) de Proofs without words de Roger Nelsen, ains qu’une compilation d’exemples inspirés du livre Excursions in Geometry de Stanley Ogilvie.
- Un autre dépot Github, Drawing with Metapost de Toby Thurston qui met à disposition un nombre impressionnant d’exemples (avec leurs codes) de figures plus jolies les unes que les autres.
Bibliographie sur MetaPost
Dans les Cahiers GUTenberg
- Maxime Chupin, « LuaLaTeX et MetaPost avec luamplib, une introduction, n° 58, 2022
- Yves Soulet, « Metapost raconté aux piétons », n° 52-53, 2009
- Denis Roegel, « Sphères, grands cercles et parallèles », n° 48, 2007
- Denis Roegel, « MetaPost, l’intelligence graphique », n° 41, 2001
- John D. Hobby, « Un manuel de l’utilisateur pour MetaPost (Version corrigée après publication) » n° 41, 2001
- John D. Hobby, « Tracer des graphes avec MetaPost (Version corrigée après publication) » n° 41 , 2001
- Fabrice Popineau, « MetaPost pratique » n° 41 , 2001
- Denis Roegel, « La géométrie dans l’espace avec MetaPost » n° 39-40 , 2001
Documentations
- A User’s Manual for MetaPost, dernière version en date de la documentation officielle (en anglais). Une ancienne traduction en français a été publiée dans les Cahiers.
Articles dans le TUGboat
- Ventrella's terdragon in MetaPost, Linus Romer (v.43,n.3).
- Animating Fourier series decomposition of a character with LuaTeX and MPLIB, Maxime Chupin (v.42,n.1).
- A Brazilian Portuguese work on MetaPost, and how mathematics is embedded in it, Estevão Vinícius Candia (v.40,n.3).
- Corrections for slanted stems in Metafont and MetaPost, Linus Romer (v.37,n.3).
- MetaPost arrowhead variants, Alan Braslau and Hans Hagen (v.37,n.1).
- MetaPost path resolution isolated (new interface in MPlib 1.800 for resolving paths from external programs), Taco Hoekwater (v.35,n.3).
- Artful lines, Mari Voipio (v.35,n.1).
- drawdot in MetaPost: A bug, a fix, Hans Hagen (v.35,n.1).
- Color, Mari Voipio (v.34,n.3).
- Move it, Mari Voipio (v.34,n.2).
- Recreating historical patterns with MetaPost, Mari Voipio (v.34,n.1).
- User-friendly web utilities for generating LaTeX output and MetaPost graphics, Troy Henderson (v.33,n.1).
- MetaPost 1.750: Numerical engines, Taco Hoekwater (v.32,n.2).
- MetaPost 2 project goals, Hans Hagen and Taco Hoekwater (v.30,n.3).
- Introduction to MetaPost, Klaus Höppner (v.30,n.2).
- Supporting layout routines in MetaPost, Wentao Zheng (v.30,n.1).
- MetaPost macros for drawing Chinese and Japanese abaci, Denis Roegel (v.30,n.1).
- Spheres, great circles and parallels, Denis Roegel (v.30,n.1).
- An introduction to nomography: Garrigues' nomogram for the computation of Easter, Denis Roegel (v.30,n.1).
- The MetaPost library and LuaTeX, Hans Hagen (v.29,n.3).
- MetaPost development: MPlib project report, Taco Hoekwater (v.29,n.3).
- Kanji-Sudokus: Integrating Chinese and graphics, Denis Roegel (v.29,n.2).
- MPlib: MetaPost as a reusable component, Taco Hoekwater (v.28,n.3).
- A beginner's guide to MetaPost for creating high-quality graphics, Troy Henderson (v.28,n.1).
- MetaPost developments—autumn 2006, Taco Hoekwater. New features in MetaPost 0.99 and future plans (v.27,n.1).
- MP2GL: prototyping 3D objects with MetaPost and OpenGL, Denis Roegel (EuroTeX 2005 proceedings).
- Embedding fonts in MetaPost output, Troy Henderson (v.26,n.3).
- Swelled rules and MetaPost (introduction to using MetaPost in ConTeXt), Steve Peter (v.26,n.3).
- Qin notation generator, Candy L.K. Yiu and Jim Binkley (v.26,n.2).
- Converting Metafont sources to outline fonts using MetaPost, Karel Píška (v.26,n.2).
- Kissing circles: A French romance in MetaPost, Denis Roegel (v.26,n.1).
- FEATPOST and a review of 3D MetaPost packages, Luís Gonçalves (TUG 2004 preprints).
- Programming PostScript Type 1 fonts using MetaType1: Auditing, enhancing, creating, Bogusław Jackowski, Janusz Nowacki, Piotr Strzelczyk (v.24,n.3).
- Floating point numbers and Metafont, MetaPost, TeX, and PostScript Type1 fonts, Claudio Beccari (v.23,n.3-4).
- Space geometry with MetaPost, Denis Roegel (v.22,n.4).
- Drawing graphs with MetaPost, John Hobby (v.22,n.1-2).
- The Calculator Demo: Integrating TeX, MetaPost, JavaScript and PDF, Hans Hagen (v.19,n.3).
- MetaPost and patterns, Piotr Bolek (v.19,n.3).
- Creating 3D animations with MetaPost, Denis Roegel (v.18,n.4).
- Graphics and TeX: A reappraisal of MF/MetaPost/PS, Kees van der Laan (v.17,n.3).
- Introducing MetaPost, Alan Hoenig (v.16,n.1).