我想获取 NSTextView 中某个点的屏幕位置(NSPoint),这应该很简单,但结果总是有点偏差,X 是完美的,但 Y 似乎有所不同。
我尝试了下面代码的一些变体,但无法得到我想要的结果,是 NSClipView 把它搞砸了吗?
NSPoint p = [[self layoutManager] locationForGlyphAtIndex:r.location];
//NSPoint b= [self convertPoint:p toView:nil];
NSPoint screenlocation = [self convertPointToBase:p];
有什么想法吗?
干杯!
MT
最佳答案
根据documentation ,字形的位置是相对于其封闭的线片段的。您应该使用线片段的矩形来调整点。这应该可以修复您看到的变化。
关于cocoa - NSTextView 中位置在屏幕上的位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2243906/