FontMake-MP ist ein Python-Skript ( fmp.py ), das dem Fontmake-Schriftkompiler parallele UFO-Quell-Kompilierung unterstützt. Es unterstützt die Automatisierung der parallelen UFO -Kompilierung bis zur Anzahl der verfügbaren Kerne in Ihrem System.
Und es macht einen Unterschied.
Benchmarks für otf + ttf Builds x 4 Variante UFO -Quelle nach Sequenz vs. parallel:

Details
FontMake muss in Ihrem System installiert werden, um dieses Skript zu verwenden. Sie können Fontmake mit dem Befehl installieren:
$ pip install fontmake
Laden Sie das ausführbare Python -Skript mit einem der folgenden Ansätze herunter:
Verwenden Sie Curl, um fmp.py an den Ort zu ziehen, an dem Sie die Datei ausführen möchten:
$ curl -L -O https://raw.githubusercontent.com/source-foundry/fontmake-mp/master/fmp.py
Laden Sie das .zip -Archiv des Quell -Repositorys herunter, packen Sie es aus und verschieben Sie das Skript fmp.py an den Ort Ihrer Wahl in Ihrem System. Sie können alle anderen Repository -Dateien und das ausgepackte Repository -Verzeichnis verwerfen.
Standardmäßig kompiliert fmp.py während des Zusammenstellungsprozesses sowohl .ttf als auch .otf -Schriftarten. Dies kann nach Bedarf an den einen oder anderen dieser Dateitypen geändert werden (siehe Abschnitt "Manuelle Änderungen) unten).
Das Format für die Verwendung von Befehlszeilen ist Folgendes:
$ python fmp.py [UFO path 1] [UFO path 2] ... [UFO path n]
Schnellere Kompilierungen können für einige Benutzer mit dem Pypy -JIT -Compiler und nicht des CPython -Dolmetschers erreicht werden. Installieren Sie die PYPY in Ihrem System, erstellen Sie eine Virtualenv -Umgebung für PYPY, installieren Sie Fontmake (siehe oben) und führen Sie das Skript mit dem folgenden Befehl aus:
$ pypy fmp.py [UFO path 1] [UFO path 2] ... [UFO path n]
fmp.py wird einen neuen Prozess für jedes UFO-Quellverzeichnis in einer mehrkundigen Build-Anforderung bis zur Anzahl der verfügbaren Kerne in Ihrem System hervorrufen. Dieser Wert wird durch die Methode Python multiprocessing.cpu_count() bestimmt.
Um die verzeichnete Prozessnummer manuell festzulegen, ändern Sie die PROCESSES konstante Ganzzahl oben in der fmp.py -Datei in die gewünschte Anzahl von Prozessen. fmp.py verringert diese Zahl automatisch auf die Anzahl der angeforderten UFO -Kompilierungen, wenn die letztere Nummer geringer ist als die angeforderte Anzahl von produzierten Prozessen. Dies bedeutet, dass Sie dies auf die Gesamtzahl der CPU in Ihrem System einstellen können, und das Skript wird immer die Anzahl der Prozesse erzeugt, die Ihren UFO -Kompilierungsanforderungen bis zu einem Maximum Ihrer Einstellung entsprechen.
Der Build -Dateityp kann in der Konstante BUILD_FILE_TYPE oben in der fmp.py -Datei geändert werden. Dies sollte als Python -Tupel formatiert werden. Verwenden Sie die folgenden Einstellungen, um Ihren Build zu ändern:
BUILD_FILE_TYPE = ( 'ttf' ) BUILD_FILE_TYPE = ( 'otf' )FontMake-MP basiert auf dem exzellenten Fontmake-Projekt, bei dem die ganze harte Arbeit geschieht.
MIT -Lizenz