NSString根据宽度获得能显示出的字符串
2017-05-23 21:07
288 查看
- (NSString *)getVisibleStringWithWidth:(CGFloat)width font:(UIFont *)font { NSMutableParagraphStyle *p = [[NSMutableParagraphStyle alloc] init]; p.lineBreakMode = NSLineBreakByCharWrapping; NSAttributedString *namesAtt = [[NSAttributedString alloc] initWithString:self attributes:@{NSFontAttributeName:font, NSParagraphStyleAttributeName:p}]; CTFramesetterRef framesetter = CTFramesetterCreateWithAttributedString((CFAttributedStringRef)namesAtt); UIBezierPath *path = [UIBezierPath bezierPathWithRect:CGRectMake(0, 0, width, 25.)]; CTFrameRef frame = CTFramesetterCreateFrame(framesetter, CFRangeMake(0, self.length), path.CGPath, NULL); CFRange range = CTFrameGetVisibleStringRange(frame); CFRelease(framesetter); CFRelease(frame); return [self substringWithRange:NSMakeRange(range.location, range.length)]; }
相关文章推荐
- iOS小demo之根据label的宽度计算字符串显示需要的高度
- [WPF]根据显示区域宽度裁剪字符串
- 根据宽度来决定显示的字符串长度(C#)
- iOS开发 NSString根据字符串一定高度/宽度返回字符串所占的宽度/高度
- 根据字体大小得到字符串显示时的宽度(C#)
- J2ME 根据显示宽度分割字符串
- 根据显示宽度分割字符串
- J2ME 根据显示宽度分割字符串
- cocos2dx中根据要显示的最大宽度向utf8字符串中加入换行符,即“自动换行”
- 根据宽根据宽度来决定显示的字符串长度 (C#,VS2005)度来决定显示的字符串长度 (C#,VS2005)
- iPhone获取字符串高度和宽度 以及UILabel 的换行显示
- 关于怎样获得字符串在DrawText时矩形的宽度
- 根据一个Activity字符串名字获得Acitivity的Class对象
- 根据字符串的实际长度,获取合适长度的字符串(汉字占2个字符的宽度,其他字符占1个字符的宽度)
- winform窗体中 ComboBox 控件的DropDownWidth属性根据显示的文本设置下拉列表的显示宽度
- 动态获取字符串 NSString的长宽--------自适应文本宽度、高度
- 让一个字符重复指定次数,让一个字符或字符串占指定宽度显示
- 动态获取字符串 NSString的长宽--------自适应文本宽度、高度
- 将网页内容保存为字符串以及根据字符串显示成网页
- 根据字符串获得相应的类型