• iOS-使用添加的花样字体


    代码地址如下:
    http://www.demodashi.com/demo/11501.html

    项目需求中, 有时候有些金额利率等这些不用系统默认字体展现, 而需要着重突出展示!

    一、项目截图及效果截图

    • 项目压缩截图

    • 效果截图

    二、主要思路

    1. 将字体库添加到项目中
    2. 在info.plist中添加所需新字体, 同时也在target-->Build Phases-->Copy Bundle Resources中将info.plist中添加的字体添加上(确保能找到资源)
    3. 找到真实可用的fontName, 代码中使用fontWithName: size: .

    三、程序实现

    Step1. 将字体库添加到项目中

    字体库截图如下, 可以根据自己需要的哪些字体添加到项目中.

    Step2. 在info.plist中添加所需新字体.

    这里我用一个UniversLTStd-UltraCn.otf文件做测试:

    确保能找到资源, 检查下在target-->Build Phases-->Copy Bundle Resources中将info.plist中是否添加上所需字体.

    Step3. 找到真实可用的fontName

    要先找到fontName 就需要先找到familyName, 而familyName是通过我们字体库的文件去找到: 双击字体库打开,系统会默认使用字体册进行打开。这时候状态栏上面显示的是真实的familyName。如下图所示:

    有了familyName, 则相对应找到fontName就好! 通过上面的循环打印结果,在控制台搜索出相对应的结果即可.

    /*
     * 取出花样字体的fontName
     *
     * // familyName : Univers LT Std
     * // fontName : UniversLTStd-UltraCn
     * // 实际中我们使用的应该是fontName,也就是“UniversLTStd-UltraCn”
     */
    - (void)testFontName {
    
        for (NSString *familyName in [UIFont familyNames]) {
            NSLog(@"familyName:%@", familyName);
    
            for (NSString *fontName in [UIFont fontNamesForFamilyName:familyName]) {
                NSLog(@"fontName:%@", fontName);
            }
    
            NSLog(@"=====");
        }
    }
    

    控制台截图如下:

    项目中在所需位置使用fontWithName: size:

    label.font = [UIFont fontWithName:@"UniversLTStd-UltraCn" size:20];
    

    四、其他补充

    可替换使用自己所需的字体, 字体库包含中Demo中.
    具体可参考代码, 项目则能够直接运行!
    iOS-使用添加的花样字体

    代码地址如下:
    http://www.demodashi.com/demo/11501.html

    注:本文著作权归作者,由demo大师代发,拒绝转载,转载需要作者授权

  • 相关阅读:
    静态类型的 NSUserDefaults
    [转]iOS 10.2 XCode 8.2 证书申请 远程推送 打包上架
    [转-备忘]iOS11.0后APP的图标和启动图
    [转-备忘] iOS navigationBar
    测试管理_关于测试管理职位的招聘面试题
    [性能测试]关于在线用户线大于10万用户的测试
    [稳定性测试]性能测试之稳定性测试培训
    [LoadRunner]LR11安装或破解时报错的解决方法
    [windows]win10家庭版切换到管理员账户
    [缺陷管理]缺陷处理机制
  • 原文地址:https://www.cnblogs.com/demodashi/p/8509152.html
Copyright © 2020-2023  润新知