iPhone Systemschriftart
Frage
Was ist der Name des Standardsystemschrift auf dem iPhone?
Ich möchte diese abzurufen für eine UIView
anpassen.
Lösung
Zur Freude der Schrift Puristen überall, das iPhone-System Schnittstelle verwendet Helvetica oder eine Variante davon.
Die ursprünglichen iPhone, iPhone 3G und iPhone 3GS Systemschnittstelle Anwendungen Helvetica. Wie zuerst von der festgestellt immer ausgezeichnet DaringFireball, die iPhone 4 verwendet eine subtil überarbeitete Schrift genannt "Helvetica Neue." DaringFireball stellt auch fest, dass diese Veränderung ist mit dem iPhone 4 im Zusammenhang Anzeigen eher als die iOS 4 Betriebssystem und ältere iPhone Modelle iOS 4 noch Gebrauch läuft Helvetica als Systemschrift.
iPod-Modelle vor der Freigabe iPhone verwenden entweder Chicago, Espy Sans, oder Myriad und Verwendung Helvetica nach dem Veröffentlichung des iPhone.
http: / /www.everyipod.com/iphone-faq/iphone-who-designed-iphone-font-used-iphone-ringtones.html
iOS9 hat sich geändert San Fransisco . Siehe http://developer.apple.com/fonts für weitere Informationen.
Andere Tipps
Wenn Sie programatic Anpassung tun, nicht hart Code die Systemschriftart. Verwenden UIFont systemFontOfSize:
, UIFont boldSystemFontOfSize:
und UIFont italicSystemFontOfSize
( Apple-Dokumentation )
Dies hat sich besonders relevant, da iOS 7, die die Systemschriftart Helvetica Neue geändert.
Dies hat sich Super besonders relevant, da iOS 9, die die Systemschriftart geändert wieder nach San Francisco.
afaik iPhone Anwendungen " Helvetica " vorbelegt
Swift
Spezifische Schrift
eine bestimmte Schriftart in Swift Einstellung wird wie folgt vorgenommen:
let myFont = UIFont(name: "Helvetica", size: 17)
Wenn Sie den Namen nicht kennen, können Sie eine Liste der verfügbaren Font-Namen wie diese bekommen:
print(UIFont.familyNames())
Oder eine noch detailliertere Liste wie folgt aus:
for familyName in UIFont.familyNames() {
print(UIFont.fontNamesForFamilyName(familyName))
}
Aber die Systemschriftart Änderungen von Version zu Version von iOS. So wäre es besser, dynamisch die Systemschriftart zu erhalten.
Systemschrift
let myFont = UIFont.systemFontOfSize(17)
Aber wir haben die Größe hartcodiert. Was, wenn die Augen des Benutzers schlecht sind und sie wollen, dass die Schrift größer machen? Natürlich könnten Sie eine Einstellung in Ihrer Anwendung für den Benutzer, um die Schriftgröße zu ändern, aber dies ärgerlich wäre, wenn der Benutzer dies für jede einzelne App auf ihrem Handy getrennt zu tun hat. Es wäre einfacher, nur eine Änderung in den allgemeinen Einstellungen ...
machenDynamische Schrift
let myFont = UIFont.preferredFont(forTextStyle: .body)
Ah, jetzt haben wir die Systemschriftart bei der gewählten Größe des Benutzers für die Textstil wir arbeiten. Dies ist die empfohlene Methode, die Schrift zu setzen. Siehe Unterstützung dynamischer Typ für weitere Informationen zu diesem Thema.
ähnliche
Sie können jederzeit mit
UIFont *systemFont = [UIFont systemFontOfSize:12];
NSLog(@"what is it? %@ %@", systemFont.familyName, systemFont.fontName);
Die Antwort lautet:
Bis zu iOS 6
Helvetica Helvetica
iOS 7
.Helvetica Neue Interface .HelveticaNeueInterface-M3
Sie können jedoch nur verwenden Helvetica Neue
Ich bin nicht sicher, es ist ein api den Standard-Systemschriftnamen zu erhalten. So bekomme ich nur den Namen wie folgt aus:
//get system default font
UILabel *label = [[UILabel alloc] init];
fontname = label.font.fontName;
[label release];
Sieht dumm, aber es funktioniert.
Hier finden Sie einige Updates für die Unterstützung iOS 7 . Es hat Dynamic Font Size
jetzt.
Für jede und alle apps, dass die Unterstützung „Dynamic Typ“ Benutzer eine auswählen können Schriftgröße in iOS 7, die systemweit arbeitet, einfach durch den Gast „Allgemein“ unter „Einstellungen“ und wählen Sie „Schriftgröße.“
UIFont *dynamicFont = [UIFont preferredFontForTextStyle:UIFontTextStyleBody];
Und Konstanten Liste detaillierte Erklärung ist hier
NSString *const UIFontTextStyleHeadline;
NSString *const UIFontTextStyleSubheadline;
NSString *const UIFontTextStyleBody;
NSString *const UIFontTextStyleFootnote;
NSString *const UIFontTextStyleCaption1;
NSString *const UIFontTextStyleCaption2;
Kategorie UIFontSystemFonts für UIFont ( UIInterface.h ) bietet mehrere praktische vordefinierte Größen.
@interface UIFont (UIFontSystemFonts)
+ (CGFloat)labelFontSize;
+ (CGFloat)buttonFontSize;
+ (CGFloat)smallSystemFontSize;
+ (CGFloat)systemFontSize;
@end
Ich benutze es für Chat-Nachrichten (Etikett) und es funktioniert gut, wenn ich Größe von Textblöcken benötigen.
[UIFont systemFontOfSize:[UIFont labelFontSize]];
Happy Codierung!
UIFont *systemFont = [UIFont systemFontOfSize:[UIFont systemFontSize]];
Dies gibt Ihnen die Systemschriftart mit dem Standardsystemschriftgröße für die Etikettentexte standardmäßig angewendet.
Swift
Sie sollten immer die Systemstandardwerte verwenden und nicht hart Codierung den Schriftnamen, weil die Standardschriftart von Apple jederzeit geändert werden.
Es gibt ein paar System-Standard-Fonts (normal, fett , kursiv ) mit unterschiedlichen Größen (Label, Button, andere):
let font = UIFont.systemFont(ofSize: UIFont.systemFontSize)
let font2 = UIFont.boldSystemFont(ofSize: UIFont.systemFontSize)
let font3 = UIFont.italicSystemFont(ofSize: UIFont.systemFontSize)
BeAware, dass die Standard-Schriftgröße hängt von der Zielansicht (Label, Button, andere)
Beispiele:
let labelFont = UIFont.systemFont(ofSize: UIFont.labelFontSize)
let buttonFont = UIFont.systemFont(ofSize: UIFont.buttonFontSize)
let textFieldFont = UIFont.systemFont(ofSize: UIFont.systemFontSize)
-
Download erforderlich .ttf Datei
-
fügen Sie die .ttf-Datei unter Kopie Bündel Ressource, überprüfen, ob die ttf-Datei wird unter Ressource hinzugefügt
-
In info.pllist die ttf Dateinamen hinzufügen, wie es ist.
-
öffnet jetzt die Schrift Buch die .ttf-Datei in der Schriftart hinzuzufügen, wählen Sie Informationen Symbol gibt den Nachsatz Namen finden.
-
gibt nun den Postscript-Namen an der Stelle des Schriftnamen
Die Standardschriftart für iOS ist San Francisco. Sie können finden Sie in der Link weiter Details