سؤال

ما هو اسم خط النظام الافتراضي على iPhone؟

أود استرداد هذا لتخصيص أ UIView.

هل كانت مفيدة؟

المحلول

إلى فرحة أصحاب الخطوط في كل مكان ، تستخدم واجهة نظام iPhone Helvetica أو متغير منها.

تستخدم واجهة نظام iPhone و iPhone 3G و iPhone 3GS Helvetica. كما لاحظت لعبة DaringFireball الممتازة دائمًا ، يستخدم iPhone 4 خطًا منقحًا بمهارة يسمى "Helvetica Neue". يلاحظ DaringFireball أيضًا أن هذا التغيير يرتبط بعرض iPhone 4 بدلاً من نظام التشغيل iOS 4 ونماذج iPhone الأقدم التي تعمل على تشغيل iOS 4 تستخدم Helvetica كخط النظام.

تستخدم نماذج iPod التي تم إصدارها قبل iPhone إما Chicago أو Espy Sans أو Muriad واستخدام Helvetica بعد إصدار iPhone.

من عند http://www.everyipod.com/iphone-faq/iphone-who-designed-iphone-font-used-iphone-ringtones.html

ل iOS9 لقد تغير إلى سان فرانسيسكو. يرى http://developer.apple.com/fonts لمزيد من المعلومات.

نصائح أخرى

إذا كنت تقوم بالتخصيص البرمجي ، فلا تدوم رمزًا صعبًا خط النظام. يستخدم UIFont systemFontOfSize:, UIFont boldSystemFontOfSize: و UIFont italicSystemFontOfSize (وثائق Apple).

لقد أصبح هذا ذا صلة بشكل خاص منذ iOS 7 ، والذي غير خط النظام إلى Helvetica neue.

لقد أصبح هذا ممتاز ذات صلة خاصة منذ iOS 9 ، والتي غيرت خط النظام تكرارا إلى سان فرانسيسكو.

يستخدم Afaik iPhone "هيلفيتيكا"افتراضيًا <ios 10

سريع

خط محدد

يتم وضع خط معين في Swift مثل هذا:

let myFont = UIFont(name: "Helvetica", size: 17)

إذا كنت لا تعرف الاسم ، فيمكنك الحصول على قائمة بأسماء الخطوط المتاحة مثل هذا:

print(UIFont.familyNames())

أو قائمة أكثر تفصيلاً مثل هذا:

for familyName in UIFont.familyNames() {
    print(UIFont.fontNamesForFamilyName(familyName))
}

لكن خط النظام يتغير من الإصدار إلى إصدار iOS. لذلك سيكون من الأفضل الحصول على خط النظام ديناميكيًا.

خط النظام

let myFont = UIFont.systemFontOfSize(17)

لكن لدينا حجم متشدد. ماذا لو كانت عيون المستخدم سيئة ويريدون جعل الخط أكبر؟ بالطبع ، يمكنك إنشاء إعداد في تطبيقك لتغيير حجم الخط ، ولكن هذا سيكون مزعجًا إذا كان على المستخدم القيام بذلك بشكل منفصل لكل تطبيق واحد على هواتفهم. سيكون من الأسهل إجراء تغيير واحد في الإعدادات العامة ...

الخط الديناميكي

let myFont = UIFont.preferredFont(forTextStyle: .body)

آه ، لدينا الآن خط النظام في الحجم المختار للمستخدم ل نمط النص نحن نعمل مع. هذه هي الطريقة الموصى بها لوضع الخط. يرى دعم النوع الديناميكي لمزيد من المعلومات حول هذا.

متعلق ب

يمكنك دائما استخدام

UIFont *systemFont = [UIFont systemFontOfSize:12];
NSLog(@"what is it? %@ %@", systemFont.familyName, systemFont.fontName);

الجواب هو:

يصل إلى iOS 6

 Helvetica Helvetica

دائرة الرقابة الداخلية 7

.Helvetica Neue Interface .HelveticaNeueInterface-M3

ولكن يمكنك فقط استخدام Helvetica Neue

لست متأكدًا من وجود واجهة برمجة تطبيقات للحصول على اسم خط النظام الافتراضي. لذلك أنا فقط أحصل على الاسم مثل هذا:

    //get system default font
    UILabel *label = [[UILabel alloc] init];        
    fontname = label.font.fontName;
    [label release];

تبدو غبية لكنها تعمل.

هنا بعض التحديثات لدعم دائرة الرقابة الداخلية 7. لديها Dynamic Font Size الآن.

بالنسبة لأي وجميع التطبيقات التي تدعم "النوع الديناميكي" ، يمكن للمستخدمين تحديد حجم الخط في نظام التشغيل iOS 7 يعمل على نطاق واسع ، ببساطة عن طريق زيارة القسم "العام" ضمن "الإعدادات" واختيار "حجم الخط".

UIFont *dynamicFont  = [UIFont preferredFontForTextStyle:UIFontTextStyleBody];

وقائمة الثوابت ، التفسير التفصيلي هو هنا

NSString *const UIFontTextStyleHeadline;
NSString *const UIFontTextStyleSubheadline;
NSString *const UIFontTextStyleBody;
NSString *const UIFontTextStyleFootnote;
NSString *const UIFontTextStyleCaption1;
NSString *const UIFontTextStyleCaption2;

فئة uifontsystemfonts ل أويفونت (uiinterface.h) يوفر العديد من الأحجام المحددة مسبقا.

@interface UIFont (UIFontSystemFonts)
 + (CGFloat)labelFontSize;
 + (CGFloat)buttonFontSize;
 + (CGFloat)smallSystemFontSize;
 + (CGFloat)systemFontSize;
@end 

أستخدمه لرسائل الدردشة (الملصقات) وهو يعمل بشكل جيد عندما أحتاج إلى الحصول على حجم كتل نصية.

 [UIFont systemFontOfSize:[UIFont labelFontSize]];

ترميز سعيد!

UIFont *systemFont = [UIFont systemFontOfSize:[UIFont systemFontSize]];

سيمنحك هذا خط النظام مع حجم خط النظام الافتراضي المطبق لنصوص الملصقات افتراضيًا.

سريع

يجب عليك دائمًا استخدام الإعدادات الافتراضية للنظام وليس ترميز اسم الخط الثابت لأنه يمكن تغيير الخط الافتراضي بواسطة Apple في أي وقت.

هناك بعض الخطوط الافتراضية للنظام (طبيعي ، بالخط العريض, مائل) بأحجام مختلفة (تسمية ، زر ، آخرون):

let font = UIFont.systemFont(ofSize: UIFont.systemFontSize)
let font2 = UIFont.boldSystemFont(ofSize: UIFont.systemFontSize)
let font3 = UIFont.italicSystemFont(ofSize: UIFont.systemFontSize)

يعتمد الحجم على حجم الخط الافتراضي على عرض الهدف (التسمية ، الزر ، آخر)

أمثلة:

let labelFont = UIFont.systemFont(ofSize: UIFont.labelFontSize)
let buttonFont = UIFont.systemFont(ofSize: UIFont.buttonFontSize)
let textFieldFont = UIFont.systemFont(ofSize: UIFont.systemFontSize)
  1. تنزيل ملف .ttf

  2. أضف ملف .ttf ضمن مورد حزمة النسخ ، تحقق مزدوجًا ما إذا كان يتم إضافة ملف TTF ضمن المورد

  3. في info.pllist ، أضف اسم ملف TTF كما هو.

  4. افتح الآن كتاب الخط أضف ملف .ttf في كتاب الخط ، حدد أيقونة المعلومات هناك تجد اسم postScript.

  5. أعط الآن اسم PostScript في مكان اسم الخط

الخط الافتراضي لنظام التشغيل iOS هو سان فرانسيسكو. يمكنك إحالة حلقة الوصل لمزيد من التفاصيل

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top