zoukankan      html  css  js  c++  java
  • iOS中如何添加自定义的字体库

          今天在开发过程中,UI设计直接给我了一个字体库文件,让我在label的显示中直接使用自己库的文件,突然之间感觉懵逼状态,这个怎么弄,其实很简单,一句代码就可以搞定这个字体库的。

    工程配置步骤:

    1.在准备好了字库文件后,就可以加到项目中了,是把otf文件加入到项目中,这里需要注意的是要把这些otf加入到bundle中,也就是说,最后的ipa文件中必须包含有这些otf(否则应用中到哪里去找字库呢?)

    加入后如下图所示,注意手动添加到bundle中

    设置到这里还有最后一步,就是在info.plist文件中加入相应信息,这一步实际上实在项目的Info页里面增加Fonts provided by application项,并设置相应的otf文件进去,这样就告诉了应用,我要加入新的字体了,对应的字体文件是哪些。

    到这里,字库文件应该是准备好了,下面我们需要确认一下字库的名字,因为代码中需要用名字来指定字体。通常来说,这个名字和文件名是相同的,但也有不同的时候,所以这一步一定不要忽略。

          字库的名字这里是通过NSLog这个打印语句来获得,我们看一下代码:

    for (NSString *fontFamilyName in [UIFont familyNames]) {  

          NSLog(@"--- %@ ---", fontFamilyName);

        for (NSString *fontName in [UIFont fontNamesForFamilyName:fontFamilyName]) {  

                 NSLog(@"  %@", fontName);  

    }  

         NSLog(@"   ");  

    }  

    具体的使用则如以下代码所示:

        self.testLabel.font = [UIFont fontWithName:@"DIN-Bold" size:20.0];

        self.testLabel.text = @"ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz 1234567890";

    简单的字体库使用就这样就可以了。

  • 相关阅读:
    Ubuntu无法初始化软件包信息
    数组名做函数的参数
    Printf函数中%p代表什么数据类型
    assert()函数用法总结
    C语言printf 格式 zz
    零值指针指向何处? zz~
    命名空间“System.Net”中不存在类型或命名空间名称“Sockets”。是否缺少程序集引用?
    AD20配置为中文显示
    sharepoint:实现搜索功能
    sharepoint:爬网完成后上传新文档搜索不到(设定爬网Schedule)
  • 原文地址:https://www.cnblogs.com/zzzyyyccc/p/7728931.html
Copyright © 2011-2022 走看看