我正在从NSFontPanel
检索一个值,该值会更改字体系列,文本样式。但我只想要从NSFontPanel
中选择的字体样式和颜色。
我无法得到它。
NSFont *font =[fontmanager selectedFont];
string =[font fontName];
st = [font pointSize];
color =[TextEntered textColor];
在字符串变量中,我得到Font系列(例如Arial)和Font样式(例如Bold)。但我想分开这些价值观。
在颜色变量中我只得到黑色。
我无法理解我在获取颜色方面的错误,以及我用来获取字体样式的功能。
答案 0 :(得分:0)
要获得样式,您可以使用[fontmanager traitsOfFont: font]
。至于颜色,我想您希望将文本作为NSAttributedString
获取,然后获取属性NSForegroundColorAttributeName
的值。
编辑添加:假设您的TextEntered变量是NSTextField *,请使用以下内容:
NSAttributedString* theText = [TextEntered attributedStringValue];
NSColor* theColor = (NSColor*)[theText attribute: NSForegroundColorAttributeName
atIndex: 0 effectiveRange: NULL ];
对于删除线,请使用NSStrikethroughStyleAttributeName
并使用下划线NSUnderlineStyleAttributeName
。