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

Feature wish: Subpixel hinting / anti-aliasing in font rendering? #381

Open
bluenote10 opened this issue Mar 15, 2024 · 2 comments
Open

Comments

@bluenote10
Copy link

floem looks very promising, but without subpixel hinting the rendering quality of fonts is rather poor (which was also the first thing I noticed in lapce). To match the font rendering quality of native apps it would be great to have subpixel hinting.

@Samuel-B-D
Copy link

Samuel-B-D commented Apr 14, 2024

+1 for this. This is the first thing I noticed about the Lapce floem port, it is a very significant downgrade from the font rendering that the Druid version of Lapce had. The current font rendering in floem not only doesn't have subpixel antialiasing, but is poorly hinted and very blurry, to a point that I personally consider non-usable on a 1080p display.

AFAIK, Druid never had subpixel font anti-aliasing to begin with, and Lapce had a custom implementation leveraging swash, with the anti-aliasing inspired by what was done in swash's demo

Could a similar approach be integrated directly into floem's font rendering?

@jrmoulton
Copy link
Contributor

Floem currently does use swash for font rendering.

At some point we will likely switch to using Vello for rendering and I expect these issues to be fixed when we make that change. Vello currently isn't ready to be integrated into floem yet though.

To edit/fix/update/change font rendering in floem you can take a look at our fork of cosmic text(floem branch) and how it integrates with swash for rendering

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants