mpimage.tex

Jean-Michel Sarlat (
jm-sarlat@melusine.eu.org) - 3 mars 2003
1 Fichier et script
2 Exemples


Le fichier mpimage.tex permet la transformation d'un fichier image produit par MetaPost en un fichier PostScript lisible directement par un interpréteur, GhostScript par exemple. C'est une étape pour obtenir une image, ce qui peut-être automatisé à l'aide d'un script.

1 - Fichier et script

mpimage.tex
 
% mpimage.tex
% usage : tex mpimage monimage.n,facteur
%    où : monimage.n est une production de MetaPost, facteur est un nombre
%         représentant le facteur d'agrandissement (en étant raisonnable...)
% Jean-Michel Sarlat (http://melusine.eu.org/syracuse/)
% Ce fichier est largement inspiré de mproof.tex.

\nopagenumbers  %-
\hsize=19cm \hoffset=-20mm
\vsize=28cm \voffset=-20mm
\input epsf
\def\epsfsize#1#2{\facteur#1}
\def\place#1#2{\long\def\facteur{#2}\epsffile{#1}}
\everypar{\everypar{}\image}
\def\image#1,#2
{\catcode`\^^M=5 \place{#1}{#2} \end}%-

Supposons maintenant que l'on dispose de monimage.1, comportant des labels TeX. Il suffit de faire :
tex mpimage monimage.1,2
pour obtenir un fichier mpimage.dvi (embarquant la figure avec une taille multipliée par 2) qui pourra être transformé en un fichier PostScript lisible, à l'aide de DVIPS :
dvips -ta4 monimage.dvi -o
Mais le but, n'est pas de s'arrêter là, une conversion à l'aide d'ImageMagick, produira l'image attendue :
convert -crop 0x0 mpimage.ps monimage.1.png


Le mieux est donc d'automatiser cela avec un script.

Fichier : mpimage.sh

#!/bin/sh
tex mpimage $1,$2
dvips -ta4 mpimage.dvi -o
convert -crop 0x0 mpimage.ps $1.png

Ce script est basique (de même que mpimage.tex), il peut être étoffé pour mieux organisé la tâche. Pour son utilisation il est nécessaire de le rendre actif (chmod u+x mpimage.sh), de disposer d'ImageMagick sur son système et d'accèder au fichier mpimage.tex.

2 - Exemples


Voici deux images représentant le même L-System en deux tailles différentes.


./mpimage.sh flower2.1 0.75

./mpimage.sh flower2.1 1.25

Source index.txt mouliné par petitParseur(Z+B) le lundi 3 mars 2003.