0
回答
获取字符串所占像素长度
利用AWS快速构建适用于生产的无服务器应用程序,免费试用12个月>>>   

在图生上处理字符的时候,需要得到字符串所占位置长度。这长度与字体相关。下面的方法判断200像素的长度内是否可以以最小字体为15号字体来显示字符串。str为你要显示的字符串。

UIFont *font = [UIFont fontWithName:@"DINNextLTPro-Bold" size:20];  
UILabel *label = [[UILabel alloc] init];  
label.lineBreakMode = UILineBreakModeCharacterWrap;  
label.numberOfLines = 1;  
label.font = font;  
label.text = str;  
label.frame = CGRectMake(0, 0, 0, CGFLOAT_MAX);  
int i = 20;  
for (i = 20; i > 15; i--) {  
    label.font = [label.font fontWithSize:i];  
    [label sizeToFit];  
    NSLog(@"font size = %d label size width = %f max size = %f", i, label.frame.size.width, 200.);  
    if (label.frame.size.width < 200.) {  
        break;  
    }  
    label.frame = CGRectMake(0, 0, 0, CGFLOAT_MAX);  
}  
  
[label release];  
  
if (i <= 15) {  
    return NO;  
}  
return YES; 



原文链接:http://blog.csdn.net/favormm/article/details/6163643
<无标签>
举报
长平狐
发帖于5年前 0回/719阅
顶部