Pregunta

Quiero conseguir la ubicación de la pantalla (NSPoint) de un punto en un NSTextView, esto debe ser simple, pero por los resultados son siempre un poco apagado, la X es perfecto, pero la Y parece variar.

He intentado un par de variaciones del código de abajo, pero no puedo obtener el resultado que busco, es la NSClipView atornillarlo para arriba?

NSPoint p = [[self layoutManager] locationForGlyphAtIndex:r.location];
//NSPoint b= [self convertPoint:p toView:nil];
NSPoint screenlocation = [self convertPointToBase:p];

¿Alguna idea?

Saludos!

MT

¿Fue útil?

Solución

De acuerdo con la documentación , la ubicación de un glifo es relativo a su fragmento línea envolvente. Debe ajustar el punto usando el rectángulo del fragmento de línea. Eso debería corregir la variación que se ve.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top