On 01/02/2011, at 9:09 AM, Todd Heberlein wrote:

> I'm doing a simple experiment using NSTextStorage, NSLayoutManager, 
> NSTextContainer to draw some text (I am basing this on the CircleView example 
> because I want some of that orientation power later).
> 
> I have found that when rendering the text using 
> drawGlyphsForGlyphRange:atPoint:, I don't get the text where I expected. It 
> is higher than I expect. Furthermore, when I draw a rectangle around the text 
> (or try to) using the rectangle from usedRectForTextContainer:, the text is 
> outside the rectangle (in short, the rectangle is where I expect it to be, 
> but the text glyphs are not).
> 
> Is there a secret incantation that I am missing?


One thing that caught me out at first was that text is laid out based on the 
top, left of the glyph's bounding box, not on some notional baseline. The 
glyphs are positioned so that the baselines line up, but this is done by 
offsetting the top edge of the bbox. So if you assume that it's the baseline 
you're setting, text will be placed generally higher than expected. Is that 
what's happening?

--Graham


_______________________________________________

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com

Reply via email to