justvanrossum / fontgoggles

FontGoggles: Visual OTL Preview and QA
Apache License 2.0
401 stars 43 forks source link

Feature request: tracking slider #317

Open ohbendy opened 1 year ago

ohbendy commented 1 year ago

Thanks again for a great utility!

I wonder if it would be possible to add a tracking slider to these options:

Screenshot 2023-02-07 at 10 19 14

Adjusting tracking is a really helpful quick way of checking that marks are actually anchored to bases. If they're not, they'll just float away when tracking is applied.

khaledhosny commented 1 year ago

If they're not, they'll just float away when tracking is applied.

That really depends on how tracking is implemented, and keeping marks with their bases requires using Unicode grapheme cluster segmentation, so even if FG does it right, there is no guarantee other applications will give you the same output.

Furthermore, whether the marks are anchor in GPOS or not is irrelevant dince tracking has to be applied after shaping including GPOS application.

ohbendy commented 1 year ago

For the SEAsian scripts at least, tracking in the browser produces this kind of result. Marks stay attached to bases as they should:

Screenshot 2023-02-07 at 10 52 54

khaledhosny commented 1 year ago

That is because the browser is making sure to move the cluster together, a naive implementation might not do this, and whether the marks are attached or not is irrelevant (if you remove the GPOS table from the font, the marks will be mispositioned but still attached to its base).

I’m not saying FG shouldn’t support tracking, but even if it did, it will not help you with this issue.

ohbendy commented 1 year ago

oh that's interesting! Thanks for explaining. I wonder if there's another way to check the marks are anchored properly? I normally shift anchors up/down a few hundred units and re-export the fonts to test that, but there might be a way FG could indicate it?

punchcutter commented 1 year ago

Easy to check by toggling mark or mkmk on and off. I do that all the time.

ohbendy commented 1 year ago

how did I not think of that? Thank you 🫠

punchcutter commented 1 year ago

And since it's a 3 way toggle it's easier to alt click to go directly to off and then click to go back to on instead of cycling through default/on/off.