美文网首页
iOS 字体下载

iOS 字体下载

作者: 红袖吾狗 | 来源:发表于2017-05-12 15:37 被阅读1331次

    参考文章:原文🔗


    iOS可以动态的为系统下载字体,这些字体都下载到了系统的/private/var/mobile/Library/Assets/com_apple_MobileAsset_Font/目录下,并且可以被其他应用公用。当然,问题是应用的大小倒是没变,而你的手机空间在不知不觉中就变小了。\-.-/~

    来看下如何实现动态下载:

    CTFontDescriptorRef descRef = CTFontDescriptorCreateWithAttributes((__bridge CFDictionaryRef)@{(NSString *)kCTFontNameAttribute: fontName});
        NSArray *descs = @[(__bridge id)descRef];
        
        CTFontDescriptorMatchFontDescriptorsWithProgressHandler((CFArrayRef)descs, NULL, ^bool(CTFontDescriptorMatchingState state, CFDictionaryRef  _Nonnull progressParameter) {
            
            if (state == kCTFontDescriptorMatchingWillBeginDownloading) {
                NSLog(@"开始下载");
            } else if (state == kCTFontDescriptorMatchingDownloading) {
                double progressValue = [[(__bridge NSDictionary *)progressParameter objectForKey:(id)kCTFontDescriptorMatchingPercentage] doubleValue];
                NSLog(@"下载进度:%0.2lf",progressValue);
            } else if (state == kCTFontDescriptorMatchingDidFinishDownloading) {
                NSLog(@"下载完成");
                
                dispatch_async(dispatch_get_main_queue(), ^{
                    self.label.font = [UIFont fontWithName:fontName size:12];
                });
            } else if (state == kCTFontDescriptorMatchingDidBegin) {
                NSLog(@"开始");
            }
            
            return YES;
        });
    
    改变前.png 改变后.png

    相关文章

      网友评论

          本文标题:iOS 字体下载

          本文链接:https://www.haomeiwen.com/subject/avnztxtx.html