Bug 397645 - No subpixel rendering when background is transparent
Summary: No subpixel rendering when background is transparent
Status: REOPENED
Alias: None
Product: konsole
Classification: Applications
Component: general (show other bugs)
Version: 18.04.3
Platform: Manjaro Linux
: NOR normal
Target Milestone: ---
Assignee: Konsole Developer
URL:
Keywords:
: 410748 (view as bug list)
Depends on:
Blocks:
 
Reported: 2018-08-20 01:43 UTC by Lucas
Modified: 2019-09-11 12:49 UTC (History)
4 users (show)

See Also:
Latest Commit:
Version Fixed In:
Sentry Crash Report:


Attachments
1% transparency (2.00 KB, image/png)
2018-08-20 01:43 UTC, Lucas
Details
0% transparency (2.02 KB, image/png)
2018-08-20 01:44 UTC, Lucas
Details
tilix (348.86 KB, image/png)
2019-08-26 02:35 UTC, Lucas
Details
tilix: 50% black on white behind window (3.30 KB, image/png)
2019-09-11 12:49 UTC, Mariusz Glebocki
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Lucas 2018-08-20 01:43:28 UTC
Created attachment 114509 [details]
1% transparency

Subpixel font rendering is not present when the background has even 1% transparency and the background color is the same as 0%, resulting in a blurrier font.
Comment 1 Lucas 2018-08-20 01:44:47 UTC
Created attachment 114510 [details]
0% transparency
Comment 2 Nate Graham 2018-08-21 21:23:28 UTC
Alex, any ideas?
Comment 3 Christoph Feck 2018-08-22 00:53:08 UTC
If Konsole renders to a separate QPixmap in the transparent case, then this is https://bugreports.qt.io/browse/QTBUG-22334.
Comment 4 Alex Nemeth 2018-08-22 18:35:20 UTC
(In reply to Nate Graham from comment #2)
> Alex, any ideas?

sorry, I don't know why this could be happening
but I bet it's a Qt bug like Christoph said
Comment 5 Christoph Feck 2019-08-20 19:27:30 UTC
*** Bug 410748 has been marked as a duplicate of this bug. ***
Comment 6 Mariusz Glebocki 2019-08-26 01:26:00 UTC
This is not a bug. Subpixel rendering relies on information about background pixels and consequently does not support transparency. Konsole (and freetype, Qt text renderer on Linux/BSD) does not have access to pixels under window.

More info: https://devblogs.microsoft.com/oldnewthing/20150129-00/?p=44803
Comment 7 Lucas 2019-08-26 02:35:24 UTC
Created attachment 122359 [details]
tilix

Other terminals don't have this problem.
Comment 8 Mariusz Glebocki 2019-09-11 12:49:02 UTC
Created attachment 122597 [details]
tilix: 50% black on white behind window

Thanks for the example! It is still not perfect, but better than I thought/already saw before. Some kind of hybrid solution (using smooth transition from subpixel to normal when making background more transparent) might work.
With Qt it is not possible AFAIK, but rendering engine might change.