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大師代發,拒絕轉載,轉載需要作者授權


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM