Details
-
Suggestion
-
Resolution: Unresolved
-
P2: Important
-
None
-
5.9.1
-
None
Description
The native renderer for text does not support dynamic scaling and requires too much memory at large sizes, and the distance field renderer rounds off sharp edges at large sizes because of imprecisions in the vector data.
We need a third algorithm that can be used for larger fonts and still works on vector data rather than on prerasterizing the glyphs.
The solution is to implement winding number fills in the shader, which is fairly straight-forward, but comes with numerical issues as well as performance issues.
The following article has a variation on the approach which is promising: http://jcgt.org/published/0006/02/02/
Attachments
Gerrit Reviews
For Gerrit Dashboard: QTBUG-61933 | ||||||
---|---|---|---|---|---|---|
# | Subject | Branch | Project | Status | CR | V |
199445,58 | WIP: Some research into drawing contours on gpu | dev | qt/qtdeclarative | Status: DEFERRED | -2 | 0 |
199751,2 | Enabler for contour glyph renderer | dev | qt/qtbase | Status: DEFERRED | -2 | 0 |
200842,1 | QTextureGlyphCache: Let subclasses disable subpixel rendering | dev | qt/qtbase | Status: DEFERRED | 0 | 0 |
201130,1 | Make it possible for glyph cache to override glyph bounding box | dev | qt/qtbase | Status: DEFERRED | 0 | 0 |