objective-c – 如何仅更改NSTextView中整个样式文本的字体大小
发布时间:2020-12-16 05:32:47 所属栏目:百科 来源:网络整理
导读:我需要设置使用多种字体的所选富文本的文字大小(例如42). 我想我可以检查每组字符的属性,修改字体大小并设置属性,但是看浮动字体面板似乎应该有一个非常简单和直接的方法来实现.我想念一些明显的东西吗? 解决方法 在10.6中,有一个方便的方法来遍历属性并增
我需要设置使用多种字体的所选富文本的文字大小(例如42).
我想我可以检查每组字符的属性,修改字体大小并设置属性,但是看浮动字体面板似乎应该有一个非常简单和直接的方法来实现.我想念一些明显的东西吗? 解决方法
在10.6中,有一个方便的方法来遍历属性并增加字体大小.
此方法可以添加到NSTextView类别. - (IBAction)increaseFontSize:(id)sender { NSTextStorage *textStorage = [self textStorage]; [textStorage beginEditing]; [textStorage enumerateAttributesInRange: NSMakeRange(0,[textStorage length]) options: 0 usingBlock: ^(NSDictionary *attributesDictionary,NSRange range,BOOL *stop) { #pragma unused(stop) NSFont *font = [attributesDictionary objectForKey:NSFontAttributeName]; if (font) { [textStorage removeAttribute:NSFontAttributeName range:range]; font = [[NSFontManager sharedFontManager] convertFont:font toSize:[font pointSize] + 1]; [textStorage addAttribute:NSFontAttributeName value:font range:range]; } }]; [textStorage endEditing]; [self didChangeText]; } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |