Nevron Forum

How to get individual character positions from font.MeasureString

https://nevron.com/Forum/Topic9356.aspx

By Karl Hulme - Thursday, September 3, 2015

The NFont.MeasureString function gives me the rendered size of text, catering for word-wrap.

How can I find out the bounds of each character?

I can measure each character individually of course, but this requires me to re-implement the word-wrap rules without knowing how they've been implemented in MeasureString or PaintString.  It's a clumsy approach, so I'm hoping there's a way to get at/interact with the existing implementation.

This might be unconnected, but I might need to generate NGlyphs and implement my own word-wrap rules - which is fine in theory, but I can't figure out how the NGlyph or NGlyphRun system hangs to together.  

Any pointers much appreciated.
By Nevron Support - Tuesday, January 19, 2016

Hi Karl,

Unfortunately the framework does not expose ways to measure individual characters other than measuring a single char at a time, which is cumbersome and error prone (this approach will not work with many languages that contain character reordering, substitution or use combining characters). We will consider making this public if this is still an issue for you - just let us know if you're still interested in this functionality.