Summary: | png screenshot is big (5.9 MiB) | ||
---|---|---|---|
Product: | [Applications] Spectacle | Reporter: | Patrick Silva <bugseforuns> |
Component: | General | Assignee: | Boudhayan Gupta <me> |
Status: | RESOLVED FIXED | ||
Severity: | major | CC: | nate, schwancarl |
Priority: | VHI | ||
Version: | unspecified | ||
Target Milestone: | --- | ||
Platform: | Arch Linux | ||
OS: | Linux | ||
Latest Commit: | https://commits.kde.org/spectacle/879249b62570b3f6c5e9c4ca23bb4be0ec1a22c9 | Version Fixed In: | 19.04.1 |
Sentry Crash Report: |
Description
Patrick Silva
2019-04-05 18:29:17 UTC
Looking at the size of my old screenshots, this is a regression. optipng old_screeenshot.png => 25% reduction optipng new_screenshot.png => 95% reduction Workaround: If you save as PNG, set Compression Quality to 0 in Spectacle settings. If you save as JPEG, the setting should be at least 50, or the quality is really bad. Actually, I noticed that setting the Compression Quality value to anything smaller than 90 is enough to force PNG compression. I will change the default value from 90 to 89 for the 19.04.0 release. Then we have time to investigate how to best proceed. Discussion in https://phabricator.kde.org/D19591 revealed https://bugreports.qt.io/browse/QTBUG-43618 Git commit 0f259d9be2bd6be8e8e28b46f22e5ba7d5720273 by Christoph Feck. Committed on 11/04/2019 at 07:37. Pushed by cfeck into branch 'Applications/19.04'. Change default compression quality from 90 to 89 Qt's PNG ImageWriter (ab)uses setQuality() for setCompression(), which causes "no compression" for any quality value larger than 89. See https://bugreports.qt.io/browse/QTBUG-43618 For screenshots, which usually have large areas of flat colors, uncompressed files are very large (e.g. 24 MB for a 4K screen). Sharing screenshots directly is quite common, so users won't notice immediately that they are sharing big files. Changing the quality value from 90 to 89 doesn't severely degrade quality for JPEG files until we find a better solution, M +1 -1 src/SpectacleConfig.cpp https://commits.kde.org/spectacle/0f259d9be2bd6be8e8e28b46f22e5ba7d5720273 Git commit 879249b62570b3f6c5e9c4ca23bb4be0ec1a22c9 by Nate Graham, on behalf of David Redondo. Committed on 05/05/2019 at 17:57. Pushed by ngraham into branch 'Applications/19.04'. Set compression to 50 is the format is png Summary: This reverts commit 0f259d9be2bd6be8e8e28b46f22e5ba7d5720273. If no value for compression is set the png handler will fallback to using quality to determine compression resulting in huge files. See also the Discussion in D19591. FIXED-IN: 19.04.1 Test Plan: Save png with quality configured to 100. The picture file should have a reasonable size. Reviewers: #spectacle, cfeck, ngraham Reviewed By: #spectacle, ngraham Subscribers: shubham, #spectacle Tags: #spectacle Differential Revision: https://phabricator.kde.org/D20985 M +9 -0 src/ExportManager.cpp M +1 -1 src/SpectacleConfig.cpp https://commits.kde.org/spectacle/879249b62570b3f6c5e9c4ca23bb4be0ec1a22c9 |