iOS學習——iOS項目增加新的字體

  • 2019 年 10 月 8 日
  • 筆記

基本思路

  在項目開發過程中,iOS系統自帶的字體庫可能不適應需求,需要導入其他的字體庫。下面是iOS項目增加新的字體的基本思路,基本上分為三步:

  1. 將字體庫添加到項目中
  2. 在info.plist中添加所需新字體, 同時也在target–>Build Phases–>Copy Bundle Resources中將info.plist中添加的字體添加上(確保能找到資源)
  3. 找到真實可用的fontName, 程式碼中使用fontWithName: size: .

具體步驟

Step1. 將字體庫添加到項目中

添加過程中一定要選中 copy items if needed,將文件copy到項目中。添加成功後的項目結構效果圖如下圖

Step2. 對字體庫進行配置。

配置有兩步

  • 第一是需要在info.plist中添加所需新字體,在 info.plist文件中添加一組鍵值對,Fonts provided by application,然後在下面的item對應的值填寫就是我們添加的字體庫文件的名稱
  • 第二是需要在target–>Build Phases–>Copy Bundle Resources中將info.plist中添加的字體添加上(確保能找到資源)

Step3. 找到真實可用的fontName,程式碼中使用fontWithName: size:。

前面的配置做好之後,我們就可以使用了,但是使用fontWithName: size:需要知道字體庫的名稱,所以我們需要檢測是否已經成功導入字體到系統了,我們就列印一下 Fontfamily 來看看我們添加的字體庫是否已導入,並且可以獲取到我們添加的字體的名稱。

// 遍歷獲取字體名稱  - (void)printFontName  {      for(NSString *fontFamilyName in [UIFont familyNames]){          NSLog(@"family:'%@'",fontFamilyName);          for(NSString *fontName in [UIFont fontNamesForFamilyName:fontFamilyName]){              NSLog(@"tfont:'%@'",fontName);          }          NSLog(@"-------------");      }  }

結果如下,我們可以發現我們添加的字體是名稱,後面就可以直接使用了