Adaptation d'une animation

Ce document présente des opérations permettant d'obtenir un rendu satisfaisant des pointillés lorque l'on utilise la chaîne de production MetaPost > ps2pdf > pdf2swf.

Voici l'animation obtenue dans son état brut, le framerate est fixé à 2 images par seconde; il reste à l'habiller. Il se peut que son défilement vous gêne à la lecture de ce document, vous pouvez l'arrêter à partir du menu qui apparaît lorsque l'on clique avec le bouton droit de la souris sur l'animation.

Animation flash

Le fichier MetaPost utilisé décrit la construction de l'intersection d'un cube par un plan.

Voir le fichier intersection.mp

Dans ce source on notera les deux lignes suivantes:

prologues:=1;

Cette instruction permet d'indiquer à MetaPost que les fontes seront gérées extérieurement à un environnement TeX, par GhostScript en ce qui nous concerne.

input fichierps;

Le fichier fichierps.mp contient les macros qui construiront le script PostScript qui sera utilisé par ps2pdf afin d'obtenir le fichier PDF de l'animation. Seule l'une de ces macros doit être invoquée (InitFichierPS), elle fixe la taille de l'animation. Les autres sont utilisées en surcharge des procédures extra_beginfig et extra_endfig internes à MetaPost. Pour cette raison, mieux vaut faire appel à fichierps en dernier.

Maintenant, il ne reste qu'à compiler...

$> mpost intersection.mp

Les figures sont produites ainsi que le fichier intersection.ps. Les figures embarquent toutes une rédéfinition de stroke (comme indiqué ici) qui permettra d'obtenir les bons pointillés en fin de production.

Passons à la production du fichier PDF, la gestion des fontes nous revient. Pour l'animation concernée il n'y a que cmr10 qui soit utilisée. Il suffit donc de localiser la version Type 1 (cmr10.pfb) sur son système et de documenter un fichier Fontmap.GS que l'on placera dans le répertoire de l'animation. Et pour être complet, on écrira aussi un fichier Fontmap, que GhostScript lit par défaut, indiquant où chercher les fontes... Bien sûr tout ceci peut-être configuré de façon à ne pas être répété à chaque fois.

$> ps2pdf -dNOSAFER intersection.ps

L'option NOSAFER est nécessaire pour autoriser GhostScript à lire les fichiers définis à l'aide d'un chemin absolu.

Nous disposons maintenant du fichier intersection.pdf, il ne reste plus qu'à achever la production de l'animation...

$> pdf2swf intersection.pdf -o temp.swf

$> swfcombine -dz -r 2 temp.swf -o intersection.swf; rm temp.swf