Convertire i font OpenType in font TrueType

Per lunedì dovevo fare una relazione sugli algoritmi di ordinamento e portarla a scuola. Pertanto ho voluto cercare qualche font di bell’aspetto. Ovviamente non ho esitato a consultare Dafont, il mio archivio preferito di font gratuiti e liberamente usabili. La mia scelta è ricaduta sul font Qlassik.

Entusiasta per la bellezza e l’eleganza del font, e ansioso di applicarlo ai titoli dei paragrafi, lo scarico, e mi accorgo subito che è composto di due file di tipo OpenType. Io da perfetto incompetente, non sapevo che fosse un formato registrato da Microsoft, anzi pensavo che quell’open significasse qualcos’altro. Dopo aver messo i font nella cartella /usr/share/fonts/truetype e aver visto che non funzionavano, ho deciso di trovare un modo di convertirli. Ebbene, ce l’ho! 🙂

Seguo la guida e installo Fontforge:

sudo aptitude install fontforge

A questo punto creo un file che dice a Fontforge cosa fare:

sudo gedit /usr/bin/script-otf2ttf.sh

E ci inserisco le istruzioni:

#!/usr/local/bin/fontforge
 # Quick and dirty hack: converts a font to truetype (.ttf)
 Print("Opening "+$1);
 Open($1);
 Print("Saving "+$1:r+".ttf");
 Generate($1:r+".ttf");
 Quit(0);

Salvo ed esco. Se copiate il contenuto del file state attenti alle virgolette!

Poi ho creato un nuovo eseguibile in questo modo:

sudo gedit /usr/bin/otf2ttf

E ci ho inserito:

#!/bin/bash
 for i in $@; do
 fontforge -script /usr/bin/script-otf2ttf.sh $i
 done

A questo punto ho salvato, poi gli ho dato i permessi di esecuzione:

sudo chmod a+x /usr/bin/otf2ttf

Fatto.

Mi sono trovato con un programmino che accetta in input i font di tipo .otf e li converte in .ttf, ovvero TrueType, perfettamente gestibili da tutti i programmi. Come fare per convertire tutti i file OpenType in una directory?

Semplice. Ci si sposta nella cartella in cui sono contenuti e si da il comando:

otf2ttf *.otf

In questo modo il programma esegue una istanza della conversione per ogni file che trova. A questo punto è possibile ad esempio spostarli tutti in una cartella:

mkdir ttf
mv *.ttf ttf/

E questo è quanto.:)

Per finire, vi linko la guida che mi ha portato sulla giusta strada. Ditemi che ne pensate! 😀

Aggiornamento 19/03/2009: ho aggiornato questo post con una modifica per rendere più semplice l’utilizzo dello script con un numero arbitrario di font.