iPhone sistem yazı tipi


98

İPhone'daki varsayılan sistem yazı tipinin adı nedir?

Bunu bir UIView.

Yanıtlar:


109

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 .


6
Şu anda Helvetica Neue Regular yazı tipidir.
Augustine

4
İOS9 için San Fransisco olarak değiştirildi. Daha fazla bilgi için developer.apple.com/fonts adresine bakın .
Freek Sanders

103

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.


1
Sistem yazı tipini değiştirmeyeceğim, bu kötü bir fikir. Ama UIWebView'da bazı html için istiyorum.
SK9

Bu, sistem yazı tipini değiştirmez - yalnızca size UIFontverilen 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.
Adam Wright

UIWebView'ımda gördüğüm yazı tipi bana Helvetica gibi görünmüyor. Yanılıyor olabilirim ama kendi görüşüme göre yazı tipini ayarlamak şüphemi ortadan kaldırıyor.
SK9

"sistem yazı tipini sabit kodlamayın" duruma bağlı olarak iyi bir tavsiye veya gerçekten kötü bir tavsiyedir. Şahsen, keşke kodlanmış olsaydım Helvetica... bunu şimdi yapıyor olsaydım .
Dan Rosenstark

Tamamen katılıyorum, kod yazmayın lütfen. Bu sorunun doğru cevabı bu olmalı
Esteve

16

afaik iPhone varsayılan olarak " Helvetica " kullanır <iOS 10


diğer yanıtlarda görüldüğü gibi, iOS sürümüne bağlıdır
ericosg

12

Swift

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 .

İlişkili


11

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


1
iOS 9'da .SFUIText-RegularsystemFont.familyName
Daniel


8

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.


17
UIFont * yazı tipi = [UIFont systemFontOfSize: 12.0]; <! - varsayılan yazı tipini alır
Steven Baughman

Daha kolay yöntemler var .. Ama kutunun dışında düşünmek için +1
Krishnabhadra

Daha iyi görünüyor: P [UIFont systemFontOfSize:[UIFont labelFontSize]];Aşağıdaki cevabıma bakın.
Anton Gaenko

3

İş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;

3

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!


3
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.


2

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)

0
  1. .ttf dosyasını indirmek

  2. .ttf dosyasını kopya paket kaynağı altına ekleyin, ttf dosyasının kaynak altına eklenip eklenmediğini iki kez kontrol edin

  3. İnfo.pllist içinde ttf dosya adını olduğu gibi ekleyin.

  4. şimdi yazı tipi kitabını açın .ttf dosyasını yazı tipi kitabına ekleyin, bilgi simgesini seçin, orada postscript adını bulun.

  5. şimdi yazı tipi adı yerine postscript adını verin


Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.