Bug 512687

Summary: Font Rendering Appears Blurry Compared to Windows 11
Product: [Plasma] plasmashell Reporter: quanticcpu2100
Component: generalAssignee: Plasma Bugs List <plasma-bugs-null>
Status: RESOLVED UPSTREAM    
Severity: major CC: kde, lol.snowy308, sitter
Priority: NOR    
Version First Reported In: 6.5.3   
Target Milestone: 1.0   
Platform: Fedora RPMs   
OS: Linux   
Latest Commit: Version Fixed/Implemented In:
Sentry Crash Report:

Description quanticcpu2100 2025-11-27 16:06:12 UTC
When comparing font rendering in KDE Plasma (under both Wayland and X11) to Windows 11, I consistently observe reduced sharpness, lower micro-contrast, and a slightly blurred appearance on Linux. These differences become especially apparent on high-resolution (HiDPI) displays and standard RGB subpixel panels. Below is a detailed technical breakdown to help identify potential causes and implementation differences between the Linux rendering pipeline and the ClearType system used by Windows 11.

1. Subpixel Rendering (ClearType vs. FreeType)
Windows 11 employs ClearType, which integrates directional subpixel filtering, perceptual contrast correction, and subpixel-specific gamma adjustments. This results in extremely crisp vertical stems and fine-grained detail preservation.

On Linux, KDE Plasma relies on FreeType for font rasterization combined with Fontconfig settings. Even with subpixel rendering enabled (RGB/BGR), the output tends to show softer edges, suggesting that FreeType's subpixel filters are either less aggressive or apply broader smoothing kernels. This difference is perceptually noticeable, especially on small point sizes (10–12 pt).

2. Hinting Behavior
ClearType uses precise TrueType bytecode instructions and a strong hinting strategy to align glyph geometry tightly to the pixel grid. This improves clarity by reducing fractional pixel placement and minimizing antialiasing blur.

FreeType allows configurable hinting (None, Light, Medium, Full), but even under “Full,” some fonts appear less tightly aligned. As a result, glyphs can exhibit mild blur or inconsistent stroke weight. ClearType’s autohinter and bytecode interpreter are heavily optimized, while FreeType’s approach tends to prioritize glyph shape preservation rather than strict pixel grid alignment.

3. Gamma Correction and Contrast
Windows applies subpixel-aware gamma curves and contrast boosting designed specifically for LCD rendering. These enhance the perceived sharpness of characters without causing haloing.

FreeType’s gamma handling and the available Fontconfig settings do not replicate ClearType’s perceptual tuning. In many Plasma setups, the effective gamma correction results in softer edges, contributing to the “blurred” perception, even when subpixel rendering is active.

4. Font Instruction Optimization
Many widely used typefaces (e.g., Segoe UI, Calibri, and other Microsoft-optimized families) contain proprietary ClearType instructions and tuning that target the Windows rasterizer directly. On Linux, these instructions may be ignored or rendered differently due to FreeType’s different hinting engine, resulting in reduced clarity compared to their appearance on Windows.

5. Compositor and Scaling Behavior
Rendering differences can also arise from:

* KWin’s compositor settings
* Wayland’s fractional scaling pipeline
* X11 vs. Wayland font rendering paths
* Buffer sampling or scaling artifacts during compositing

Fractional scaling values (e.g., 1.25× or 1.5×) can introduce additional interpolation steps that soften text appearance. Windows 11’s scaling system, however, integrates ClearType rendering after layout and scaling operations, maintaining consistent sharpness.

6. DPI and Layout Consistency
Windows standardizes DPI handling across the system with a well-integrated rendering pipeline. On Linux, discrepancies between toolkit DPI (Qt, GTK), compositor DPI, and application DPI can introduce variations in effective rasterization size, further impacting clarity.

7. Summary of the Issue
Despite adjusting:

* Subpixel order (RGB/BGR/V-RGB/V-BGR)
* Hinting level (None/Light/Medium/Full)
* Antialiasing strength
* Gamma correction parameters
* Fontconfig patches and overrides
  the resulting font rendering in KDE Plasma still does not achieve a level of sharpness comparable to Windows 11’s ClearType implementation.

Request for Evaluation
I would like to request an evaluation to determine whether:

1. Improvements can be made within KWin or Plasma’s rendering pipeline to produce sharper subpixel rendering.
2. Additional configuration options could better match ClearType’s perceptual optimizations.
3. There are known issues with Wayland or fractional scaling that affect text rendering clarity.
4. Any adjustments to the FreeType/Fontconfig integration could help align the rendering quality more closely with that of Windows 11.

I am available to run additional tests, provide screenshots, or generate font rendering diagnostics if that would assist in narrowing down the root cause.
-------------------
Operating System: Fedora 43
KDE Plasma Version: 6.5.3
KDE Frameworks Version: 6.20.0
Qt Version: 6.10.1
Kernel Version: 6.17.9 (64-bit)
Graphics Platform: Wayland
Comment 1 lol.snowy308 2025-11-28 07:54:54 UTC
I've got similar problem with font rendering. But for me time to time fonts lost sharpness and gets blurry. After some time fonts are back to previous sharpness. 
Seems to be problem only on Wayland with interface scaling enabled (110%)
In my opinion plasma fonts in general look bit blurry in compared to Gnome/Windows.
Comment 2 Harald Sitter 2025-11-28 11:26:42 UTC
I fear this isn't very actionable as a bug report.

Also we are not really the right party to talk to. As you've observed freetype (and fontconfig) are much more in charge of this than we are. Then comes Qt. Then come we.

I suggest you take this up with freetype first and then work your way up to us with whatever issues remain and file one bug report per observed problem.