有什么办法可以在运行时重写吗?
谢谢.
解决方法 我知道这是一个古老的问题,但是我试图在今天做同样的事情,发现使用CoreText和CGFont的方式.首先确保你添加了CoreText框架
#import <CoreText/CoreText.h>
那么这应该做到这一点(在这个例子中,我使用的是我以前下载的字体,并保存到documents目录下的一个Fonts目录中)
NSArray * paths = NSSearchPathForDirectorIEsInDomains(NSdocumentDirectory,NSUserDomainMask,YES); Nsstring * documentsDirectory = [paths objectAtIndex:0]; Nsstring * FontPath = [documentsDirectory stringByAppendingPathComponent:@"Fonts/Chalkduster.ttf"]; NSURL * url = [NSURL fileURLWithPath:FontPath]; CGDataProvIDerRef FontDataProvIDer = CGDataProvIDerCreateWithURL((__brIDge CFURLRef)url); CGFontRef newFont = CGFontCreateWithDataProvIDer(FontDataProvIDer); Nsstring * newFontname = (__brIDge Nsstring *)CGFontcopypostscriptname(newFont); CGDataProvIDerRelease(FontDataProvIDer); CFErrorRef error; CTFontManagerRegistergraphicsFont(newFont,&error); CGFontRelease(newFont); UIFont * finalFont = [UIFont FontWithname:newFontname size:20.0f];
希望它有助于任何人绊倒这个问题!
总结以上是内存溢出为你收集整理的iphone – iOS:在运行时以编程方式添加自定义字体全部内容,希望文章能够帮你解决iphone – iOS:在运行时以编程方式添加自定义字体所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)