記得以前UIWebView 計(jì)算html文本的時(shí)候老是會(huì)有誤差
所以把這個(gè)貼出來(lái),留著備用
原始數(shù)據(jù):
把內(nèi)容放到NSAttributedString里來(lái)計(jì)算:
NSString *richText=@"<p>lfjkdlsajfdjsalf</p>";
NSAttributedString *attributeString=[[NSAttributedString alloc] initWithData:[richText dataUsingEncoding:NSUnicodeStringEncoding]
options:@{NSDocumentTypeDocumentAttribute:NSHTMLTextDocumentType}
documentAttributes:nil
error:nil];
使用 NSString 的 boundingRectWithSize 方法來(lái)計(jì)算
NSRange range=NSMakeRange(0, attributeString.string.length);
NSDictionary *attribute=[attributeString attributesAtIndex:0 effectiveRange:&range];
CGRect rect=[attributeString.string boundingRectWithSize:CGSizeMake(SCREEN_WIDTH-30, 2000)
options:NSStringDrawingUsesLineFragmentOrigin|NSStringDrawingUsesFontLeading
attributes:attribute
context:nil];