ก่อนอื่นฉันคิดว่า SpriteKit ไม่ได้สร้างความแตกต่างใด ๆ
- คุณต้องคัดลอกแบบอักษรใน. otf หรือ. tf ไปยังโครงการของคุณ ตัวอย่างเช่นในไฟล์ที่รองรับ
- คุณจำเป็นต้องแก้ไข.plistไฟล์ เพิ่มคีย์"แบบอักษรที่แอปพลิเคชันให้มา"ลงใน plist ของคุณและในรายการ 0คัดลอกชื่อไฟล์ที่แน่นอนของแบบอักษรที่คุณคัดลอกไปยังไฟล์สนับสนุนที่มีนามสกุล ตัวอย่างเช่น "JosefinSansStd-Light_0.otf"
- ตรวจสอบให้แน่ใจว่าแบบอักษรที่คุณนำเข้าสู่แอปของคุณถูกบรรจุลงในแอปเอง ทำได้โดยการเลือกของคุณเป้าหมายแล้วสร้างเฟสแล้วคัดลอกทรัพยากร Bundle หากคุณไม่เห็นตัวอักษรของคุณมีให้ลากจากแฟ้มสนับสนุน
สุดท้ายคุณต้องการแสดงรายการแบบอักษรทั้งหมดของคุณเมื่อแอปเริ่มต้นเพียงเพื่อดูชื่อที่ใช้งานได้สำหรับแบบอักษรของคุณ คุณจะทำสิ่งนั้นด้วยรหัสชิ้นเล็ก ๆ นี้:
NSArray *fontFamilies = [UIFont familyNames];
for (int i = 0; i < [fontFamilies count]; i++)
{
NSString *fontFamily = [fontFamilies objectAtIndex:i];
NSArray *fontNames = [UIFont fontNamesForFamilyName:[fontFamilies objectAtIndex:i]];
NSLog (@"%@: %@", fontFamily, fontNames);
}
ค้นหาแบบอักษรของคุณในผลการพิมพ์ตัวอย่างเช่นฉันจะค้นหา "Josefin" และฉันจะเห็นชื่อแบบอักษรจริงคือ "JosefinSansStd-Light" หลังจากนั้นคุณจะต้องใช้แบบอักษรนั้นโดย:
UIFont *customFont = [UIFont fontWithName:@"JosefinSansStd-Light" size:20];
ใน iOS8 คุณสามารถเพิ่มแบบอักษรของคุณลงในโปรเจ็กต์ได้โดยตรงและสามารถมองเห็นได้ในตัวสร้างอินเทอร์เฟซ แก้ไขรหัสของคุณเพื่ออธิบายสิ่งนี้ แต่ตั้งค่าแบบอักษรทางโปรแกรมสำหรับ iOS7 และเลือกในตัวสร้างอินเทอร์เฟซ xCode6 ปล. ตัวสร้างอินเทอร์เฟซใน xCode6 ให้ชื่อแบบอักษรที่ถูกต้องซึ่งคุณสามารถคัดลอกและวางลงในโค้ดด้านล่าง
#define SYSTEM_VERSION_LESS_THAN(v) ([[[UIDevice currentDevice] systemVersion] compare:v options:NSNumericSearch] == NSOrderedAscending)
if(SYSTEM_VERSION_LESS_THAN(@"8.0"))
{
UIFont *customFont = [UIFont fontWithName:@"OpenSans-Light" size:32];
self.registerLabel.font = customFont;
}
หวังว่านี่จะช่วยได้ไชโย