4 ms·
I have been building Qt 5.3 and Qt Creator almost weekly and the move from X11 to XCB sounds attractive but when it comes to font rendering, it is terrible. All
by kungfoocoder 12y ago
I have been building Qt 5.3 and Qt Creator almost weekly and the move from X11 to XCB sounds attractive but when it comes to font rendering, it is terrible. All the fonts looked washed out and it just leaves me with sore eyes.
- sho_hn 12y agoThe move to XCB has no impact on font rendering. QWidget continues to use the same font rendering stack it has for many years, i.e. fontconfig to interact with system fonts, harfbuzz for layout and Xft/FreeType for rasterization. Qt Quick 2 supports two different ways of rasterization. The default one is a GL-based rasterizer using the distance field method. The other is FreeType. You can switch between them on a per-item basis: http://doc-snapshot.qt-project.org/qt5-stable/qml-qtquick-text.html#renderType-prop http://doc-snapshot.qt-project.org/qt5-stable/qml-qtquick-te... Most likely your problem is that you're seeing the distance field render. The advantage of the distance field renderer is that it produces more even results in animated transformations (e.g. scaling text up or down over a number of frames), but the disadvantage is rendering fidelity (particular preserving the full detail of glyph shapes) and that it's just not consistent with other things using FreeType alongside it. In KDE Plasma Next, which extensively uses Qt Quick 2 for nearly all UI, we're mostly using FreeType rasterization for that reason.
- kungfoocoder 12y agoI was talking about the rendering that Qt-Creator uses inherently. If you know of a way to control that, it would be great. The only option I see is under Editor->Fonts as "Enable/Disable antialiasing" which isn't really helpful since I use Ubuntu Mono, Monaco etc.