iOS 使用第三方字体

在iOS的项目开发中经常遇到需要使用一些自定义的字体文件,比如 仿宋_GB2312华康少女体等。之前我们为了使用这些自定义的字体,在应用的资源包中放入这些字体文件。因为字体文件通常比较大,有的一个字库就达到10M以上,这样打包后的ipa文件的体积就可能会变得很大,对于只有个别的模块需要特殊的字体样式的应用来说很不划算,那么在iOS6.0以后苹果就开放了动态加载字体的权限。下面就iOS中使用字体的这两种方式进行介绍。

使用静态字体

将字体文件拷贝到项目工程中,在 Info.plist文件中添加 Fonts provided by application的配置项,其中每一个Item对应的是字体文件的名称,如 huakangshaonv.ttf

然后就可以调用 + (UIFont *)fontWithName:(NSString *)fontName size:(CGFloat)fontSize使用字体,如果不知道fontName可以遍历打印出来:

使用动态字体

在网易新闻iOS客户端中可以使用自定义的字体,对于未下载的字体可先下载然后安装下次就能自动设置为该字体,效果如下:

下面就该功能简单介绍实现的步骤

  • *下载字体文件

  • *解压zip压缩包

  • *注册指定路径下的字体文件

下载回来的字体文件如果不做处理是不能直接使用的,使用前需要先注册然后才能使用,注册方式如下:

需要先引入 #import <coretext coretext.h></coretext>CoreText框架

  • *判断字体是否加载

在使用字体文件前最好是先判断字体是否已经被加载过了,判断方式如下:

  • *其他说明

经测试注册过的字体在应用关闭后下次开启应用,判断字体是否加载时返回为 NO,为了保证正常使用需要每次启动应用的时候先遍历一遍字体文件夹将里面的字体文件都再次注册一遍即可。参考代码如下:

以上就是对使用第三方字体的方法的介绍。

Original: https://www.cnblogs.com/Free-Thinker/p/15880421.html
Author: brave-sailor
Title: iOS 使用第三方字体

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/546148/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • 【Python】使用Selenium实现淘宝抢单

    最近,小明为了达成小姐姐的愿望,在某宝买到心仪的宝贝,再加上又迷上了python,就通过python轻而易举地实现了(个人声明:对Java来说,这并不是背叛)。 需求分析&…

    技术杂谈 2023年7月24日
    088
  • EMAS Serverless系列~4步教你快速搭建小程序

    体验简介 本实验基于 EMAS Serverless 的云函数、云数据库、云存储等云服务能力一站式快速开发小程序《私人云相册》。Demo 主要包括如下功能:1 相册管理2 上传相片…

    技术杂谈 2023年7月10日
    090
  • 跨境电商独立站怎么做

    独立站一般是指商家自己搭建的跨境电商网站。跨境电商独立站拥有独立域名,内容、数据、权益私有,脱离第三方电商平台束缚,不仅可以进行多个渠道、多个方式的网络曝光和推广,并且推广所带来的…

    技术杂谈 2023年5月31日
    0103
  • iOS修改项目名称

    网上很多方法修改iOS项目名字,但是操作不当就会遇到文件路径错误,修改前项目和修改后的项目路径指向同一文件,在这就是把项目修改完全打不开等等。今天在这分享完美修改项目名称,避免路径…

    技术杂谈 2023年5月31日
    087
  • SpringBoot整合Redis

    创建redis缓存配置类,配置插件(较为固定) package com.xsha.servicebase; import com.fasterxml.jackson.annotat…

    技术杂谈 2023年6月21日
    0116
  • h5新标签介绍

    html5新增了一些标签 这些标签都是语义标签,可以帮助我们更好的理解,代码中的意思;(都是双标签) 案例: 将语义标签翻译过来为 (并没有太多的区别) 但也有几个有意思的标签; …

    技术杂谈 2023年6月1日
    081
  • Mac下Charles踩坑记录

    初次使用Charles,摸索着抓包的过程中遇到了很多问题。在这里一一记录一下,避免其他初学者踩坑。 问题1:不显示request和response? 在Charles的配置页面可以…

    技术杂谈 2023年7月24日
    056
  • linux全新机器环境搭建流程梳理

    软件解压后安装基础指令(复制用):./configure && make && make install ./configure –pr…

    技术杂谈 2023年7月11日
    082
  • 根据两个向量计算它们之间的旋转矩阵

    一、简介 本文主要介绍通过给定的两个空间向量,计算出从一个向量旋转到另一个向量的旋转矩阵。 二、步骤 ① 假设两个向量分别为vectorBefore(x1,y1,z1), vect…

    技术杂谈 2023年7月23日
    065
  • jupyter-notebook 以yarn模式运行出现的问题及解决

    之前用pyspark虚拟机只跑了单机程序,现在想试试分布式运算。在做之前找了书和博客来看,总是有各种各样的问题,无法成功。现在特记录一下过程:这里一共有两个虚拟机,一个做maste…

    技术杂谈 2023年5月30日
    062
  • mysql安装及访问配置

    例:https://cdn.mysql.com/Downloads/MySQL-8.0/mysql-8.0.30-linux-glibc2.12-x86_64.tar.xz 使用原…

    技术杂谈 2023年7月11日
    089
  • Django显示本地图片,注意事项

    1、在url.py文件中的配置 导入相关的库,在Python2.0后,要用re_path from django.urls import path,re_path from dja…

    技术杂谈 2023年7月24日
    099
  • 挖矿病毒 qW3xT.2 最终解决方案

    转自:https://blog.csdn.net/hgx13467479678/article/details/82347473 1,cpu 100%, 用top 查看cpu100…

    技术杂谈 2023年6月1日
    085
  • 三大纪律八项注意

    https://baike.baidu.com/item/%E4%B8%89%E5%A4%A7%E7%BA%AA%E5%BE%8B%E5%85%AB%E9%A1%B9%E6%B3%…

    技术杂谈 2023年6月1日
    093
  • 景深计算公式

    δ——容许弥散圆直径f——镜头焦距F——镜头的拍摄光圈值L——对焦距离ΔL1——前景深ΔL2——后景深ΔL——景深 从上图表公式(1)和(2)可以看出,后景深>前景深。 景深…

    技术杂谈 2023年5月31日
    0113
  • WSL简单环境搭建以及踩坑

    笔者的电脑配置不高,开虚拟机跑linux总觉得太重。最近才了解到windows早就上了wsl2——一款较为轻量的虚拟机软件。所以笔者打算一边安装一边记录笔记,方便以后查阅,同时将内…

    技术杂谈 2023年6月21日
    086
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球