swift – Xcode:在动态框架内使用自定义字体

swift – Xcode:在动态框架内使用自定义字体,第1张

概述我将自定义字体添加到框架中.我遵循所有的步骤,但它不起作用. 我可以在Interface Builder中设置字体,但是当我构建项目时,它不会在模拟器/设备上显示此字体. 这是我的John的答案版本,显示如果你有很多字体,该如何调用该函数 import Foundationextension UIFont { @nonobjc static var loadAllFontsDO: d 我将自定义字体添加到框架中.我遵循所有的步骤,但它不起作用.

我可以在Interface Builder中设置字体,但是当我构建项目时,它不会在模拟器/设备上显示此字体.

这是我的John的答案版本,显示如果你有很多字体,该如何调用该函数
import Foundationextension UIFont {    @nonobjc static var loadAllFontsDO: dispatch_once_t = 0    class func initialsAvatarFont() -> UIFont {        loadAllFonts()        if let retval = UIFont(name: "MyFontname",size: kInitialsAvatarFontSize) {            return retval;        } else {            return UIFont.systemFontOfSize(kInitialsAvatarFontSize)        }    }    class func loadAllFonts() {        dispatch_once(&loadAllFontsDO) { () -> VoID in            registerFontWithfilenameString("theFontfilename.ttf",bundleIDentifIErString: "nameOfResourceBundleAlongsIDeTheFrameworkBundle")            // Add more Font files here as required        }    }    static func registerFontWithfilenameString(filenameString: String,bundleIDentifIErString: String) {        let frameworkBundle = NSBundle(forClass: AnyClassInYourFramework.self)        let resourceBundleURL = frameworkBundle.URLForResource(bundleIDentifIErString,withExtension: "bundle")        if let bundle = NSBundle(URL: resourceBundleURL!) {            let pathForResourceString = bundle.pathForResource(filenameString,ofType: nil)            let FontData = NSData(contentsOffile: pathForResourceString!)            let dataProvIDer = CGDataProvIDerCreateWithCFData(FontData)            let FontRef = CGFontCreateWithDataProvIDer(dataProvIDer)            var errorRef: Unmanaged<CFError>? = nil            if (CTFontManagerRegistergraphicsFont(FontRef!,&errorRef) == false) {                NSLog("Failed to register Font - register graphics Font Failed - this Font may have already been registered in the main bundle.")            }        }        else {            NSLog("Failed to register Font - bundle IDentifIEr invalID.")        }    }}
总结

以上是内存溢出为你收集整理的swift – Xcode:在动态框架内使用自定义字体全部内容,希望文章能够帮你解决swift – Xcode:在动态框架内使用自定义字体所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1040418.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-24
下一篇 2022-05-24

发表评论

登录后才能评论

评论列表(0条)

保存