SUMMARY Under KDE wayland, with fractional scaling, screenshots taken by Spectacle are blurry. STEPS TO REPRODUCE 1. Login using wayland display server (should be default now), set the display scale to 175% 2. Take a screenshot with Spectacle OBSERVED RESULT The screenshot is blurry, like it is being scaled down and up again. EXPECTED RESULT The screenshot should look sharp like what is seen on screen SOFTWARE/OS VERSIONS Operating System: Fedora Linux 36 KDE Plasma Version: 5.25.5 KDE Frameworks Version: 5.98.0 Qt Version: 5.15.6 Kernel Version: 5.19.15-201.fc36.x86_64 (64-bit) Graphics Platform: Wayland Processors: 8 × Intel® Core™ i5-1035G4 CPU @ 1.10GHz Memory: 7.5 GiB of RAM Graphics Processor: Mesa Intel® Iris® Plus Graphics Manufacturer: Acer Product Name: Spin SP513-54N System Version: V1.10
In fact that's exactly what's happening; this is how fractional scaling works on Wayland for the time being. It's an active area of work though, so hopefully it will be better with Plasma 5.27.
kwin 5.26.5 and related components is achieved support for fractional scale protocol, and now content on the screen looks not blurry with non power of two scales! This bug was my critical blocker before I can move to wayland session. And now finally we have some initial support, that is great :) But spectacle continues to take blurry screenshot. Also final image resolution is not match to monitor resolution. With 150% scale on monitor with resolution 2560x1440 - final spectacle image resolution is 2561x1440. This is some rounding issue, I assume.
The reason why screenshots are blurry is that kwin downscales the window contents. 5.27 should be better. Note that the client side should also support fractional scaling. Qt should support fractional scaling in 6.5+
(In reply to Vlad Zahorodnii from comment #3) > The reason why screenshots are blurry is that kwin downscales the window > contents. 5.27 should be better. Note that the client side should also > support fractional scaling. Qt should support fractional scaling in 6.5+ I think the situation is a bit frustrating even in 5.27, because I still can't get a screenshot that looks the same as what is on screen. My theory is the same as what Toby described initially, that screenshots by Spectacle are way blurrier that on screen, not only because window content is scaled down (from 2x), but it's *scaled down and up again*, creating artifacts not present on screen. Though I wonder whether this is caused by kwin sending blurry images to Spectacle, or Spectacle mess up scaling stuff internally.
Created attachment 156301 [details] Dolphin window across screen border I have two monitors side by side, the left one scaled at 200% and the right one 150%. This is what Spectacle takes after putting a Dolphin window at screen border: left half is pixel sharp, but the right half is weirdly scaled. To the eye, the right half roughly similar to the left half. Using Plasma Wayland 5.27 on Arch Linux. GPU is AMD Radeon 680m (integrated graphics), mesa 22.3.4-1.
I can confirm that the 5.27 update fixed my issue (Wayland, 1.75 scale, single monitor), so I suggest marking this as solved. The multi-monitor case is more tricky and maybe should have its own separate issue.
Indeed, that would make sense.
(In reply to Ye Jingchen from comment #4) > (In reply to Vlad Zahorodnii from comment #3) > > The reason why screenshots are blurry is that kwin downscales the window > > contents. 5.27 should be better. Note that the client side should also > > support fractional scaling. Qt should support fractional scaling in 6.5+ > > I think the situation is a bit frustrating even in 5.27, because I still > can't get a screenshot that looks the same as what is on screen. > > My theory is the same as what Toby described initially, that screenshots by > Spectacle are way blurrier that on screen, not only because window content > is scaled down (from 2x), but it's *scaled down and up again*, creating > artifacts not present on screen. > > Though I wonder whether this is caused by kwin sending blurry images to > Spectacle, or Spectacle mess up scaling stuff internally. 5.27 worked for me on Fedora KDE. I tested by displaying an image with single-pixel dots on the screen and taking a screenshot, all dots are clearly visible and not blurry. I guess it could be a distribution-specific issue.
(In reply to Toby from comment #8) > (In reply to Ye Jingchen from comment #4) > > (In reply to Vlad Zahorodnii from comment #3) > > > The reason why screenshots are blurry is that kwin downscales the window > > > contents. 5.27 should be better. Note that the client side should also > > > support fractional scaling. Qt should support fractional scaling in 6.5+ > > > > I think the situation is a bit frustrating even in 5.27, because I still > > can't get a screenshot that looks the same as what is on screen. > > > > My theory is the same as what Toby described initially, that screenshots by > > Spectacle are way blurrier that on screen, not only because window content > > is scaled down (from 2x), but it's *scaled down and up again*, creating > > artifacts not present on screen. > > > > Though I wonder whether this is caused by kwin sending blurry images to > > Spectacle, or Spectacle mess up scaling stuff internally. > > 5.27 worked for me on Fedora KDE. I tested by displaying an image with > single-pixel dots on the screen and taking a screenshot, all dots are > clearly visible and not blurry. I guess it could be a distribution-specific > issue. Or might be related to multi-monitor setups
(In reply to Toby from comment #6) > I can confirm that the 5.27 update fixed my issue (Wayland, 1.75 scale, > single monitor), so I suggest marking this as solved. > > The multi-monitor case is more tricky and maybe should have its own separate > issue. You're right, it works fine on a single monitor. I will open another issue.