iOS瘋狂詳解之中如何添加應用自己的字體 – iPhone手機開發技術文章 iPhone軟體開發教學課程

1.第一步找到你想用的字體的 ttf 格式。加入到你的工程的resouce目錄下。

2.在工程的plist中AddRow,“Fonts provided by application” ,然後添加key為item0,value為你剛才加入的testFont.ttf 。

是這樣,可以添加多個,使用的時候寫對應字體名字就行。

3.在你的工程就可以直接用瞭。xx.font = [UIFont fontWithName:@testFont size:20.0];

 

註意:

在程序中先加入這段代碼,運行,

NSArray *familyNames =[[NSArray alloc]initWithArray:[UIFont familyNames]];
NSArray *fontNames;
NSInteger indFamily, indFont;
NSLog(@[familyNames count]===%d,[familyNames count]);
for(indFamily=0;indFamily<[familyNames count];++indFamily)

{
NSLog(@Family name: %@, [familyNames objectAtIndex:indFamily]);
fontNames =[[NSArray alloc]initWithArray:[UIFont fontNamesForFamilyName:[familyNames objectAtIndex:indFamily]]];

for(indFont=0; indFont<[fontNames count]; ++indFont)

{
NSLog(@Font name: %@,[fontNames objectAtIndex:indFont]);

}

[fontNames release];
}

[familyNames release];

查看console,以上程式會列出所有的字型,當然也包含“Fonts provided by application”所加的字型,但請註意,名字可能差距很大,要自己找一下
例:
testFont.ttf , 加入Fonts provided by application
執行以上程式會列出

2012-10-20 21:56:21.321 MyAnimationTest[5397:c07] Family name: HAKUYOGuiFanZi3500
2012-10-20 21:56:21.321 MyAnimationTest[5397:c07] Font name: HAKUYOGuiFanZi3500
2012-10-20 21:56:21.322 MyAnimationTest[5397:c07] Family name: Didot
2012-10-20 21:56:21.322 MyAnimationTest[5397:c07] Font name: Didot-Italic
2012-10-20 21:56:21.322 MyAnimationTest[5397:c07] Font name: Didot
2012-10-20 21:56:21.323 MyAnimationTest[5397:c07] Font name: Didot-Bold
2012-10-20 21:56:21.323 MyAnimationTest[5397:c07] Family name: Bodoni 72 Smallcaps
2012-10-20 21:56:21.323 MyAnimationTest[5397:c07] Font name: BodoniSvtyTwoSCITCTT-Book

要使用字體的Family name,而不是字體的文件名,弄錯瞭將無法看到效果。

註意還有一個重要的是: 在“Copy Boundle Resources”中加入剛才添加的字體文件xxx.ttf ,如下:

 

最好直接使用就ok瞭。

 

效果 :

 

 

發佈留言