Um Schriftarten in iOS zu verwenden, müssen Sie die Schriftart basierend auf dem vollständigen Namen der Schriftart (PostScript-Name) laden , der sich manchmal (und normalerweise) vom tatsächlichen Dateinamen der Schriftart unterscheidet .
Stellen Sie sich vor, Sie benennen die Schriftartdatei "Arial-regulär.ttf" in "foo.ttf" um. Die Schriftart in der soeben umbenannten Schriftartdatei ist immer noch "Arial-regulär".
Es gibt einige gute programmatische Möglichkeiten, um den Schriftnamen bereits in diesem Thread abzurufen, aber ich habe einen anderen Ansatz über die Befehlszeile.
Wenn Sie auf einem Mac oder Linux arbeiten, führen Sie dieses Skript einfach über die Befehlszeile in dem Verzeichnis aus, in dem Sie Ihre benutzerdefinierten Schriftarten haben (verwendet das fc-scan
Dienstprogramm von fontconfig, das wahrscheinlich bereits installiert ist, aber wenn nicht, können Sie es über Homebrew installieren :) brew install fontconfig
:
for file in "$arg"*.{ttf,otf}; do fc-scan --format "%{postscriptname}\n" $file; done
Hier ist ein Screenshot des obigen Befehls, der in meinem ~/Library/Fonts
Verzeichnis ausgeführt wird:
Das obige Skript durchläuft alle .ttf
und .otf
-Dateien im aktuellen Verzeichnis und druckt dann den PostScript-Namen aus für jede Schriftart aus, mit der Sie auf die Schriftartdatei in XCode oder anderswo verweisen können.
Wenn Sie zusätzliche Informationen (PostScriptName, Dateiname) und eine Farbcodierung wünschen, können Sie dieses alternative Skript ausführen:
for file in "$arg"*.{ttf,otf}; do
postscriptname=$(fc-scan --format "%{postscriptname}\n" $file);
printf "\033[36m PostScript Name:\033[0m %s \e[90m(%s)\033[0m\n" "$postscriptname" "$file";
done
Dies ist etwas schneller als das Einfügen von Code in Ihre AppDelegate.m-Datei, um die Namen jedes Mal auszudrucken, wenn Sie eine neue Schriftartdatei hinzufügen möchten. Dies ist die beliebte Methode und auch schneller als das Öffnen der Schriftart in FontBook to Überprüfen Sie den PostScript-Namen.
NÜTZLICHER TIPP: Wenn Sie das obige Skript in Ihrem Terminal als Alias verwenden, müssen Sie nur einen einzigen Befehl eingeben , um alle PostScript-Schriftnamen für alle Dateien im aktuellen Verzeichnis abzurufen (meine Funktion heißt fontnames
also alles, was ich tun muss ist Typfontnames
am Terminal innerhalb des Verzeichnisses mit Schriftarten in ihm, und die Postscript - Namen automatisch gedruckt wird, dann werden Sie Zeit in Ihrem Entwicklungs Workflow und haben dieses handliche Skript einsatzbereit, wenn Sie es brauchen speichern.
Hoffe das hilft!