Ihre Annahme ist richtig. iOS erfordert, dass Sie eine Schriftart anhand ihres Postscript-Namens (oder vollständigen Namens) identifizieren, der nicht immer mit dem tatsächlichen Dateinamen der Schriftart übereinstimmt .
Sie können den PostScript-Namen mit FontBook abrufen (wie in der akzeptierten Antwort hier gezeigt), aber es gibt auch andere Möglichkeiten.
Direkt in XCode können Sie den PostScript-Namen aus den installierten Schriftarten des Projekts über extrahieren UIFont
. Führen Sie dies einfach aus, um die PostScript-Namen Ihrer installierten Projektschriftarten zu drucken:
In Objective-C ( Quelle ):
for (NSString *fontFamilyName in [UIFont familyNames]) {
for (NSString *fontName in [UIFont fontNamesForFamilyName:fontFamilyName]) {
NSLog(@"Family: %@ Font: %@", fontFamilyName, fontName);
}
}
Oder Swift 3.0 ( Quelle )
for familyName in UIFont.familyNames {
for fontName in UIFont.fontNames(forFamilyName: familyName ) {
print("\(familyName) : \(fontName)")
}
}
Oder Sie können dieses Skript vom Terminal aus in dem Verzeichnis ausführen, in dem Sie Ihre Schriftdateien haben, um alle PostScript-Namen der Schriftarten im aktuellen Verzeichnis zu drucken (verwendet das fc-scan
Dienstprogramm von fontconfig, das wahrscheinlich bereits installiert ist) ( Quelle ):
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 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. Außerdem ist dies 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, sodass Sie nur einen einzigen Befehl eingeben müssen, um alle PostScript-Schriftnamen für alle Dateien im aktuellen Verzeichnis abzurufen, sparen Sie Zeit in Ihrem Entwicklungsworkflow und Halten Sie dieses praktische Skript bereit, wenn Sie es benötigen.
Hoffe das hilft!