İPhone'daki varsayılan sistem yazı tipinin adı nedir?
Bunu bir UIView
.
Yanıtlar:
Her yerde sadık yazı tiplerinin zevkine göre, iPhone sistem arayüzü Helvetica veya bunun bir varyantını kullanıyor.
Orijinal iPhone, iPhone 3G ve iPhone 3GS sistem arayüzü Helvetica'yı kullanıyor. Her zaman mükemmel olan DaringFireball tarafından ilk kez belirtildiği gibi, iPhone 4, "Helvetica Neue" adında incelikle revize edilmiş bir yazı tipi kullanıyor. DaringFireball, bu değişikliğin iOS 4 işletim sistemi yerine iPhone 4 ekranıyla ilgili olduğunu ve iOS 4 çalıştıran eski iPhone modellerinin sistem yazı tipi olarak Helvetica'yı kullanmaya devam ettiğini de belirtiyor.
iPhone'dan önce piyasaya sürülen iPod modelleri Chicago, Espy Sans veya Myriad kullanıyor ve iPhone'un piyasaya sürülmesinden sonra Helvetica kullanıyor.
Gönderen http://www.everyipod.com/iphone-faq/iphone-who-designed-iphone-font-used-iphone-ringtones.html
İçin iOS9 bunun değiştiğini San Fransisco . Daha fazla bilgi için http://developer.apple.com/fonts adresine bakın .
Programlı özelleştirme yapıyorsanız, sistem yazı tipini sabit kodlamayın. Kullanım UIFont systemFontOfSize:
, UIFont boldSystemFontOfSize:
ve UIFont italicSystemFontOfSize
( Elma dokümantasyon ).
Bu, özellikle sistem yazı tipini Helvetica Neue olarak değiştiren iOS 7'den beri önemli hale geldi.
Bu haline gelmiştir süper sistem yazı tipini değiştirdi iOS 9 beri özellikle alakalı tekrar San Francisco.
UIFont
verilen boyutları kullanarak sistem yazı tipi örneklerini verir ve gelecekteki iOS güncellemelerinden bağımsız olarak her zaman sistem yazı tiplerini döndürür.
Helvetica
... bunu şimdi yapıyor olsaydım .
Belirli yazı tipi
Swift'de belirli bir yazı tipi ayarlamak şu şekilde yapılır:
let myFont = UIFont(name: "Helvetica", size: 17)
Adı bilmiyorsanız, aşağıdaki gibi mevcut yazı tipi adlarının bir listesini alabilirsiniz:
print(UIFont.familyNames())
Veya bunun gibi daha ayrıntılı bir liste:
for familyName in UIFont.familyNames() {
print(UIFont.fontNamesForFamilyName(familyName))
}
Ancak sistem yazı tipi, sürümden iOS sürümüne değişir. Bu yüzden sistem yazı tipini dinamik olarak almak daha iyi olacaktır.
Sistem yazı tipi
let myFont = UIFont.systemFontOfSize(17)
Ama boyutu sabit olarak kodladık. Ya kullanıcının gözleri kötüyse ve yazı tipini büyütmek isterse? Elbette, uygulamanızda kullanıcının yazı tipi boyutunu değiştirmesi için bir ayar yapabilirsiniz, ancak kullanıcının bunu telefonundaki her bir uygulama için ayrı ayrı yapması gerekse bu can sıkıcı olur. Genel ayarlarda sadece bir değişiklik yapmak daha kolay olurdu ...
Dinamik yazı tipi
let myFont = UIFont.preferredFont(forTextStyle: .body)
Ah, şimdi çalıştığımız Metin Stili için kullanıcının seçtiği boyutta sistem yazı tipine sahibiz. Yazı tipini ayarlamanın önerilen yolu budur. Bununla ilgili daha fazla bilgi için Dinamik Türü Destekleme konusuna bakın .
Her zaman kullanabilirsin
UIFont *systemFont = [UIFont systemFontOfSize:12];
NSLog(@"what is it? %@ %@", systemFont.familyName, systemFont.fontName);
Cevap:
İOS 6'ya kadar
Helvetica Helvetica
iOS 7
.Helvetica Neue Interface .HelveticaNeueInterface-M3
ama sadece kullanabilirsin Helvetica Neue
.SFUIText-Regular
systemFont.familyName
Varsayılan sistem yazı tipi adını almak için bir api olup olmadığından emin değilim. Bu yüzden sadece şöyle bir isim alıyorum:
//get system default font
UILabel *label = [[UILabel alloc] init];
fontname = label.font.fontName;
[label release];
Aptal görünüyor ama işe yarıyor.
[UIFont systemFontOfSize:[UIFont labelFontSize]];
Aşağıdaki cevabıma bakın.
İşte iOS 7'yi desteklemek için bazı güncellemeler . It has Dynamic Font Size
şimdi.
"Dinamik Türü" destekleyen tüm uygulamalar için kullanıcılar, iOS 7'de sistem genelinde çalışan bir yazı tipi boyutu seçebilir, yalnızca "Ayarlar" altındaki "Genel" bölümünü ziyaret edip "Yazı Tipi Boyutu" nu seçerek.
UIFont *dynamicFont = [UIFont preferredFontForTextStyle:UIFontTextStyleBody];
Ve sabitler listesi, ayrıntılı açıklama burada
NSString *const UIFontTextStyleHeadline;
NSString *const UIFontTextStyleSubheadline;
NSString *const UIFontTextStyleBody;
NSString *const UIFontTextStyleFootnote;
NSString *const UIFontTextStyleCaption1;
NSString *const UIFontTextStyleCaption2;
UIFont için UIFontSystemFonts Kategorisi ( UIInterface.h ), önceden tanımlanmış birkaç kullanışlı boyut sağlar.
@interface UIFont (UIFontSystemFonts)
+ (CGFloat)labelFontSize;
+ (CGFloat)buttonFontSize;
+ (CGFloat)smallSystemFontSize;
+ (CGFloat)systemFontSize;
@end
Sohbet mesajları (etiketler) için kullanıyorum ve metin bloklarının boyutunu almam gerektiğinde iyi çalışıyor.
[UIFont systemFontOfSize:[UIFont labelFontSize]];
Mutlu kodlamalar!
UIFont *systemFont = [UIFont systemFontOfSize:[UIFont systemFontSize]];
Bu size etiket metinleri için varsayılan olarak uygulanan varsayılan sistem yazı tipi boyutuna sahip sistem yazı tipini verecektir.
Swift
Her zaman sistem varsayılanlarını kullanmalı ve yazı tipi adını sabit kodlamamalısınız çünkü varsayılan yazı tipi Apple tarafından herhangi bir zamanda değiştirilebilir.
Farklı boyutlarda (etiket, düğme, diğerleri) birkaç sistem varsayılan yazı tipi (normal, kalın , italik ) vardır:
let font = UIFont.systemFont(ofSize: UIFont.systemFontSize)
let font2 = UIFont.boldSystemFont(ofSize: UIFont.systemFontSize)
let font3 = UIFont.italicSystemFont(ofSize: UIFont.systemFontSize)
varsayılan yazı tipi boyutunun hedef görünüme (etiket, düğme, diğerleri) bağlı olduğuna dikkat edin
Örnekler:
let labelFont = UIFont.systemFont(ofSize: UIFont.labelFontSize)
let buttonFont = UIFont.systemFont(ofSize: UIFont.buttonFontSize)
let textFieldFont = UIFont.systemFont(ofSize: UIFont.systemFontSize)
.ttf dosyasını indirmek
.ttf dosyasını kopya paket kaynağı altına ekleyin, ttf dosyasının kaynak altına eklenip eklenmediğini iki kez kontrol edin
İnfo.pllist içinde ttf dosya adını olduğu gibi ekleyin.
şimdi yazı tipi kitabını açın .ttf dosyasını yazı tipi kitabına ekleyin, bilgi simgesini seçin, orada postscript adını bulun.
şimdi yazı tipi adı yerine postscript adını verin
İOS için varsayılan yazı tipi San Francisco'dur. Daha fazla ayrıntı için bağlantıya başvurabilirsiniz