iOS导入字体
2016-01-11 11:46
483 查看
1.第一步找到你想用的字体的 ttf 格式。加入到你的工程的resouce目录下。
2.在工程的plist中AddRow,“Fonts provided by application” ,然后添加key为item0,value为你刚才加入的testFont.ttf 。
是这样,可以添加多个,使用的时候写对应字体名字就行。
3.在你的工程就可以直接用了。xx.font = [UIFont fontWithName:@"testFont" size:20.0];
注意:
在程序中先加入这段代码,运行,
[html] view
plaincopy
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
执行以上程式会列出
[html] view
plaincopy
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了。
效果 :
你可以在http://www.webpagepublicity.com/free-fonts.html下载更多ttf字体。
2.在工程的plist中AddRow,“Fonts provided by application” ,然后添加key为item0,value为你刚才加入的testFont.ttf 。
是这样,可以添加多个,使用的时候写对应字体名字就行。
3.在你的工程就可以直接用了。xx.font = [UIFont fontWithName:@"testFont" size:20.0];
注意:
在程序中先加入这段代码,运行,
[html] view
plaincopy
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
执行以上程式会列出
[html] view
plaincopy
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了。
效果 :
你可以在http://www.webpagepublicity.com/free-fonts.html下载更多ttf字体。
相关文章推荐
- iOS多线程 的 线程同步
- IOS开发证书的一些经验
- iOS简单实现仪表盘进度动画
- iOS—修改AFNetworking源文件可接收text/plain的方法
- iOS为什么获取不到设备的DeviceToken
- iOS GCD 和信号量 实现 生产者和消费者模式
- iOS系统GCD学习(5):信号量机制
- iOSMasonry介绍与使用实践
- ios 块的使用(block)
- iOS 通讯录备份、恢复
- iOS 证书的那些坑
- iOS音频播放(ios自学笔记)
- IOS实现输入验证码、密码按位分割(二)
- ios开发——日常之dyld: Library not loaded: @rpath/MySDK.framework/MySDK 错误解决
- iOS标准时间与时间戳相互转换
- iOS 开发中在导航栏添加多个按钮并改变它的位置
- IOS实现自定义布局瀑布流
- iOS 真机测试提示"The identity used to sign the executable is no longer valid."
- iOS调用系统相册、相机 不能显示中文-解决方法
- iOS 自带定位服务