Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[css-text-4] Glyphs may collide by "Fullwidth Punctuation Collapsing" #8292

Open
kojiishi opened this issue Jan 9, 2023 · 0 comments
Open
Labels
css-text-4 i18n-clreq Chinese language enablement i18n-jlreq Japanese language enablement i18n-tracker Group bringing to attention of Internationalization, or tracked by i18n but not needing response.

Comments

@kojiishi
Copy link
Contributor

kojiishi commented Jan 9, 2023

I'd like to bring up a discussion by sharing our experience on implementing a tool that adds the functionality of "Fullwidth Punctuation Collapsing" in fonts as the OpenType chws feature.

This worked quite well for Noto CJK, and the fonts are shipping as part of Android and ChromeOS for months.

When we tried to support some other fonts, there were some cases where glyphs collide. We started adding an "exception list" for some fonts. When we tried to support more fonts, a good number of collisions were found. As we tested, the exception list grew longer and longer. Some of them are from font creators not knowing which glyphs must have enough spacing. Some of them are intentional, such as curly braces in extra bold fonts not being able to fit in half-width.

Given the experience, we implemented the automatic glyph bounding box detection in the tool. The currnet implementation is rather simple, just exclude the code point if its glyph does not have expected spacing.

Using halt is another option, but there are many fonts that don't have halt. I guess there are multiple ways to resolve this, including not to do anything but let authors turn the feature off for such fonts or for specific pairs, but I'd like to hear what people thinks.

/cc @fantasai @litherum @frivoal @MurakamiShinyu

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
css-text-4 i18n-clreq Chinese language enablement i18n-jlreq Japanese language enablement i18n-tracker Group bringing to attention of Internationalization, or tracked by i18n but not needing response.
Projects
None yet
Development

No branches or pull requests

2 participants