SUMMARY Thin and ExtraLight fonts in some applications are distorted when running KDE on Wayland with fractional scaling enabled. This issue is not observed in GNOME, X11, or when using integer scaling (100%, 200%). STEPS TO REPRODUCE Video: https://www.youtube.com/watch?v=CfOPSoyyk-A 1. Open Firefox on a KDE Wayland session with fractional scaling enabled. 2. Navigate to the Noto Sans page: https://fonts.google.com/noto/specimen/Noto+Sans 3. Set the background color to black (use Firefox's developer tools or custom CSS). 4. Change the font size from 48px to 20px. 5. Look at the Thin and ExtraLight font weights, particularly focusing on the letter "e". 6. Scroll the page very slowly. 7. Observe the distortion of the Thin and ExtraLight fonts, particularly the horizontal line of the letter "e" 8. Observe different brightness of vertical lines of the same letter (for example, two vertical components of the letter "h" or "n", for some of them the left line is brighter, for other brighter is the right line) OBSERVED RESULT The Thin and ExtraLight fonts exhibit distortion when scrolling slowly, most noticeably on the horizontal line of the letter "e". Vertical components (lines) of letters "h", "n" are different. For example, for all "n"s on the video, some "n"s have the brightest line on left side, other have the brightest on the right side (see video). This issue is only present when using fractional scaling on Wayland. Not observed in GNOME, X11, or with integer scaling (100%, 200%). EXPECTED RESULT The Thin and ExtraLight font weights should render cleanly, with no distortion, especially during slow scrolling. Vertical components of a letter to have same brightness. SOFTWARE/OS VERSIONS KDE Plasma Version: 6.4.5 KDE Frameworks Version: 6.18.0 Qt Version: 6.9.3 ADDITIONAL INFORMATION Anti-Aliasing: enabled Exclude range from anti-aliasing: disabled Sub-pixel rendering: RGB Hinting: Medium
> 3. Set the background color to black (use Firefox's developer tools or custom CSS). Edit: there is a theme switcher button on that webpage
Setting widget.wayland.fractional-scale.enabled = true in Firefox solves the problem.