• iOS使用自定义字体


    准备:你的自定义字体文件-〉ttf,odf字体文件。

    现在网上一般下的中文字体文件都是ttc格式的,这个需要转换一下,网上有很多转换工具,不过都是windows下面的。(ttc就是多个ttf压在一起形成的)

    使用

    1.加入工程中

    2.得到UIFont来使用

    方法一:

    Info.plist中添加Fonts provided by application项,加入一个item值为刚刚添加的字体文件文件名。

    如果不知道这个字体的FontName,可以使用Mac OS中的 字体册 程序查看。

    [textField setFont:[UIFont fontWithName:@"Amelia BT" size:12]];

    方法二:

    直接使用代码来获取UIFont

    -(UIFont*)customFont
    {// 你的字体路径
        NSString *fontPath = [[NSBundle mainBundle] pathForResource:@"Amelia BT" ofType:@"ttf"];
        
        NSURL *url = [NSURL fileURLWithPath:fontPath];
        
        CGDataProviderRef fontDataProvider = CGDataProviderCreateWithURL((__bridge CFURLRef)url);
        if (fontDataProvider == NULL)        return nil;
    
        CGFontRef newFont = CGFontCreateWithDataProvider(fontDataProvider);
        CGDataProviderRelease(fontDataProvider);
        if (newFont == NULL) return nil;
        
        NSString *fontName = (__bridge NSString *)CGFontCopyFullName(newFont);
        UIFont *font = [UIFont fontWithName:fontName size:12];
        
        CGFontRelease(newFont);
        
        return font;
    }

    修正:

    1.方法二中如果要使用UIFont,那么 不添加 Fonts provided by application项是不可以的。如果仅仅使用

    CGFontRef,那么可以不添加。
    2.测试中没有一次用ttc提取的ttf成功改变字体(中文的),但是下载的源文件就是ttf的都成功更改了字体。
  • 相关阅读:
    day3-python之函数进阶(三)
    day3-python之函数初识(二)
    day3-python之文件操作(一)
    tomcat
    集群
    nginx
    nginx--zabbix监控status waiting
    zabbix监控之mysql主从状态&mysql主从延迟
    zabbix监控之进程&日志监控
    zabbix监控流程(监控linux上某个文件是否有改动)
  • 原文地址:https://www.cnblogs.com/v2m_/p/2688768.html
Copyright © 2020-2023  润新知