Description du glyphe Metafont traitée par Metapost pour renvoyer les chemins svg

Jan 06 2021

J'espère générer des chemins SVG pour un grand nombre de caractères, et je me demande si cela pourrait être automatisé via Metapost. D'après ce que j'ai lu,

mpost ’&mfplain’ cmr10

laissera mpost traiter une description Metafont des caractères de police et affichera un fichier PostScript pour chaque caractère. Je recherche quelque chose de similaire - interpréter les descriptions de chemins Metafont et renvoyer des formes vectorielles - mais produisant des chemins ouverts, par opposition à des contours remplis. En gros, juste la trajectoire du stylo, par opposition à la trace qu'il laisse sur le papier.

Cela semble-t-il faisable avec Metapost? Je ne connais pas très bien le système, donc je préfère demander avant d'aller trop loin et de réaliser que c'est sans espoir.

Réponses

3 MarcelKrüger Jan 06 2021 at 16:46

MetaPost ne change pas le type de chemin que vous y passez. Donc, si vous avez une police comme logo10celle définie à l'aide de chemins ouverts, alors la sortie de MetaPost utilisera également des chemins ouverts (à la fois en PostScript et en SVG). Si, en revanche, vous utilisez une police comme cmr10celle définie à l'aide de contours remplis, la sortie SVG ou PostScript utilisera la même chose. ( cmr10Utilise en fait la combinaison: presque tous les glyphes utilisent à la fois un fond et un contour, qui sont également copiés dans la sortie SVG ou PostScript)

La seule exception est si vous utilisez un stylo qui n'est pas rond, alors MetaPost doit transformer les traits en contours remplis.

À propos, pour obtenir mpostdes fichiers SVG de sortie, vous pouvez passer l'argument -s outputformat=\"svg\".