-
-
Notifications
You must be signed in to change notification settings - Fork 1.2k
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
Advanced text #1830
Advanced text #1830
Conversation
`SwashCache` can't be easily trimmed and it's not really getting us anything since `glyphon` already caches using a glyph atlas anyways.
We avoid recreating buffers this way, and the amount of layers should stay relatively low anyways.
This avoids text from misteriously disappearing, even if the user uses a `height` that isn't enough to fit the text.
I'm noticing the same issue on a personal project with a couple different fonts. |
@bungoboingo @tarkah This is caused by 9a8b30d. I have incremented the default line height to |
Where is line-height measured from with ** Edited to make more clear |
@bungoboingo I would expect the same. Seems it's an issue others have encountered as well: pop-os/cosmic-text#123. |
Hopefully, the |
fix: border radius typo
fix: tiny-skia svg premultiply final filtered color
One question I have is whether the candidate backend selection should order backends based on the most performant option. I'd think something like this:
https://github.com/iced-rs/iced/blob/advanced-text/renderer/src/compositor.rs#L155 |
@i509VCB The software renderer can't really fail to initialize and it's always bundled currently. Thus, option 3 would never be reached. Can we reliably guarantee that our software rendering implementation is more performant than the driver virtual implementations? I don't know if this has an obvious answer or we need to run some actual numbers. |
I guess the answer is it depends. Lavapipe might be able to use AVX-512 if supported but then there is the issue of compiler overhead. tiny-skia does have some simd support. Probably needs to be measured anyways. |
@gabrieldechichi I was able to reproduce and fix the issue in #1847. |
This PR brings all the improvements that have been introduced in the
advanced-text
branch. Specifically:iced_wgpu
overhaul #1697text::Shaping
strategy selection #1822LineHeight
in text widgets #1828It's hard to overstate the importance of these changes! All of these features combined make one of the biggest changesets to land in
master
since the inception of the library!These efforts should lay the foundations for acquiring maturity in the long run (multi-line text input, accessibility, rendering parallelization, and more!). For more details, check out the latest roadmap diagram.
Closes #33.
Fixes #41.
Closes #1071.
Closes #1199.