如何在NSTextView中获取光标处的当前字体/字体大小?

时间:2015-02-08 17:41:23

标签: objective-c cocoa nstextview

澄清:首先,cursor =插入点光标,而不是鼠标光标。

好的,我想在NSTextView中的光标所在的位置返回字体/字体大小/字体颜色。我尝试使用attribute:atIndex:effectiveRange:,但我失败了,因为我的变量全部混淆了。我认为这是我需要的。只需要了解一些示例代码return字体。我认为它对字体大小/颜色的作用是一样的,我只需用NSFontAttributeName代替其他东西,对吧?提前谢谢!

2 个答案:

答案 0 :(得分:1)

NSFont *font = [textView.textStorage attribute:NSFontAttributeName atIndex:textView.selectedRange.location effectiveRange:nil];

应该为所有获得名字的人工作。

答案 1 :(得分:0)

你有什么尝试?

NSTextView有一个方法selectedRanges,它返回当前选择 - 如果只有一个插入点,则只是零长度之一。

NSTextView还有一个属性textStorage,它返回保存文本的NSTextStorage实例。 NSTextStorage继承自NSMutableAttributedString,继承自NSAttributedString,并且具有获取文本属性的方法。

将这两者结合起来,你就得到了答案。

HTH