1.如何导入.tff格式的字体
a.将下载的tff字体导入文件
b.到plist文件添加字体
c.如果在导入的时候没有添加到工程,那么需要在project->build phases->copyBundleResources里面添加导入的字体
4.在mac中打开字体,显示的标题就是对应的字体名字
2.如何计算某个字符串的长度
a.确定一个容器的size
a.width或者height一个固定
b.另一个足够大
b.确定计算的font
c.调用boundingRectWithSize
具体方法
NSString *str = @"偶的老家 就住在这个屯!偶是这个屯里土生土长的人哪!";
UIFont *font = [UIFont fontWithName:@"迷你简丫丫" size:25];
NSDictionary *attrDic = @{NSFontAttributeName:font};
CGSize bigSize = CGSizeMake(300, 3000);//定义一个大的容器
CGSize realSize = [str boundingRectWithSize:bigSize options:NSStringDrawingUsesLineFragmentOrigin attributes:attrDic context:nil].size;//这个是用来存放字符串的真实尺寸
3.定义一个Lable
UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(10, 100, realSize.width , realSize.height)];//起始点的x y坐标自己定义 label的长度和宽度需要使用真实尺寸的宽度和长度
label.backgroundColor = [UIColor greenColor];//背景颜色
label.text = str;//label上面显示的文本就是上面计算真实尺寸时用到的str
label.font = [UIFont fontWithName:@"迷你简丫丫" size:25];//文本的字体也要用上面计算真实尺寸时用到的字体
label.textColor = [UIColor colorWithRed:2/255.0 green:160/255.0 blue:179/255.0 alpha:1];//字体颜色 可以使用RGB
//对齐方式
label.textAlignment = NSTextAlignmentCenter;
//设置label显示多少行 0表示多行显示 n>0 显示n行 如果显示不完 就用‘...’显示
label.numberOfLines = 0;
//设置换行方式
label.lineBreakMode = NSLineBreakByWordWrapping;
//阴影
label.shadowOffset = CGSizeMake(-1, -1);
label.shadowColor = [UIColor redColor];
[self.view addSubview:label];
这样子字符串需要多大的label 我们就创建出多大的一个label 不用浪费空间