一、添加自定義字體:
因為系統自帶字體的局限性,有時候我們在開發中需要添加一些特殊要求的自定義字體。
首先我們先要去網上下載我們所需要的自定義字體,后綴名是 otf 的。
下載字體
下載好之后,把這個 otf 文件直接拖進工程當中。
添加 otf 文件
點擊這個 otf 文件,可以看到字體是什么樣的(如上圖右邊所示)。
接著,我們需要配置好 Info.plist 文件,添加 Fonts provided by application 字段,類型為 Array,下面是我們需要添加的字體名。
配置 Info.plist 文件
做完這些,我們可以查看一下,是否現在系統中已經添加了我們拖進來的字體,打印所有字體看一下。
打印所有字體
OK,確認已經成功,那現在我們就可以使用這個自定義的字體了。
// 自定義字體
label.font = [UIFont fontWithName:@"Fh_Scribble" size:18];
效果如下:
自定義字體
二、部分字體改變顏色或 Font
1,改變顏色
改變顏色
2,改變 Font
這兩個基本一樣,就是改一下里面的字段名就可以了。
改變 Font
可以看一下展示效果:
部分字體改變顏色或 Font
三、左右兩端對齊
一般像我們平時要么是左對齊,要么是右對齊,或者是居中,但是如果是展示的是英文的話,會因為單詞的長短,導致自動換行,后面經常會長短不一,影響 UI 美觀。
雖然我們設置的時候有這個屬性 label2.textAlignment = NSTextAlignmentJustified;
但是當我們設置完會發現沒效果。
如果需要設置左右兩端對齊,需要這樣:
設置左右兩端對齊
方便大家,附上代碼:
NSMutableAttributedString *changeColorString1 =[[NSMutableAttributedString alloc]initWithString:label2.text];
NSMutableParagraphStyle *style = [[NSMutableParagraphStyle alloc] init];
style.alignment = NSTextAlignmentJustified; // 對齊方式, 設置為兩端對齊。
style.paragraphSpacing = 0; // 段落后的間距
style.paragraphSpacingBefore = 0; // 段落前的間距
style.firstLineHeadIndent = 0; // 段落第一句縮進
style.headIndent = 0; // 頭部縮進(不包括段落第一句)
NSDictionary *styleDic = @{NSForegroundColorAttributeName : [UIColor blackColor],
NSFontAttributeName : label2.font,
NSParagraphStyleAttributeName : style,
NSUnderlineStyleAttributeName : [NSNumber numberWithInt:NSUnderlineStyleNone]};
[changeColorString1 setAttributes:styleDic range:NSMakeRange(0, label.text.length)];
label2.attributedText=changeColorString1;
可以比較一下效果:
設置兩端對齊效果