Hi there,
The Text TOP crops certain characters while in “Auto-Fit Always” mode. This is with Open Sans Extra Bold (attached), occurring on lowercase ‘i’.
OpenSans-ExtraBold.zip (99.6 KB)
Could you please share a .toe file with your TOP settings setup ?
While this does sound very easy to reproduce, I cannot, with default settings and just changing to Auto Fit Always and playing with the resolution height of the TOP.
So there is something else affecting this, it seems.
Best,
Michel
Sure thing @JetXS ! Attached.
textTOP.tox (478 Bytes)
Vertical alignment method / bounding box is the issue.
Thanks.
I don’t think it is. Vertical Align Mode set to Use Font Metrics instead of Bounding Box makes it worse:
Please observe the cutoff of the descender on the letter
p
.
You are right yes.
I see that switching to Polygon display method is not cropping, so maybe something to do with scalable mode and some issue computing the bounds.
Anyways, it’s logged for dev to look into it further.
Best,
Michel
I think the behavior for Scalable is the most correct, as that is our most modern font rendering system. The way auto-sizing works is it determines the size of the block of text vs the TOP resolution, and picks that size. After that it then applies other things such as alignment. Since you are requesting center vertical alignment, it’ll align the ascender area when working with a single line. This is why the rest of the text looks nicely centered. I think for your case you’ll likely want to use bottom alignment. In this case the text fits perfectly, since the p and i hit the bottom and top of the found layout box exactly. You’ll likely want to add a little Border Space to make it fit more nicely. This is if you are using Font Metrics for alignment that is.
Thanks @malcolm.
I think the main reason I was reporting was to show that “Auto-Fit Always” doesn’t actually do what it says it does. At least not without the finesse you are suggesting. Which I think is very relevant and useful information for users.
On a related note: how is textHeight being calculated in textTOPs? Is this something to do with the Slug library? I notice this is only broken with Display Method “Scalable”.
Hopefully you can see my issue here. I am trying to make a TOP, for each character of the alphabet, that doesn’t crop the character, and doesn’t require manual intervention on a per-character basis.
And I’d rather use your “most correct” approach here, even though it doesn’t look very correct to me.
Descenders sure are a pain!
Thanks for the feedback. One issue I found with the auto size is that it doesn’t allow the size to grow large enough when using ‘Bounding Box’ alignment, since many characters will be far smaller than the font size, and we had an artificial clamp. The next build we post in the next few days should be better for you. You should be adding some border space and using bounding box + bottom alignment I think, for you goals.
textHeight depends on the alignment mode. It’s either the addition of the ascenders + descenders, or the bounding box of the text block.