SUMMARY Files saved by spectacle can be quite large. Using oxipng or optipng can often shave 30% of the size in a fraction of a second. oxipng /tmp/Screenshot_20200423_111228.png Processing: /tmp/Screenshot_20200423_111228.png 1411x1217 pixels, PNG format 4x8 bits/pixel, RGBA IDAT size = 285460 bytes File size = 285946 bytes Trying: 8 combinations Found better combination: zc = 9 zs = 0 f = 0 203982 bytes IDAT size = 203982 bytes (81478 bytes decrease) file size = 204060 bytes (81886 bytes = 28.64% decrease) Output: /tmp/Screenshot_20200423_111228.png Even more space can be saved by saving as lossless webp. Webp is supported in all new browsers. Making it the default is perhaps a bit early, but it would be nice if spectable would remember the preference for webp. STEPS TO REPRODUCE $ cwebp -lossless /tmp/Screenshot_20200423_111228.png -o /tmp/Screenshot_20200423_111228.webp Saving file '/tmp/Screenshot_20200423_111228.webp' File: /tmp/Screenshot_20200423_111228.png Dimension: 1411 x 1217 Output: 92618 bytes (0.43 bpp) Lossless-ARGB compressed size: 92618 bytes * Header size: 2129 bytes, image data size: 90463 * Lossless features used: SUBTRACT-GREEN * Precision Bits: histogram=5 transform=5 cache=10 OBSERVED RESULT $ ls -l /tmp/Screenshot_20200423_111228.* 285946 23 apr 11:12 /tmp/Screenshot_20200423_111228.png 92618 23 apr 11:13 /tmp/Screenshot_20200423_111228.web SOFTWARE/OS VERSIONS Linux/KDE Plasma: 19.12 (available in About System) KDE Plasma Version: 19.12 KDE Frameworks Version: 5.66 Qt Version: 5.12.7 ADDITIONAL INFORMATION
Spectacle can save in all file formats supported by QImageWriter. In fact on my machine I can select webp as file format resulting in 100 KiB 1920x1080 screenshots.
That's great to hear. I've plugins/imageformats/libqwebp.so on my machine but do not see an option to save to webp or set it as a default format. Is there an option to save losslessly? webp can save lossy and losslessly and often for screenshots the lossless version is smaller as well as more accurate.
After installing the Qt image plugins, spectacle can save as webp. Very nice! When I save images with webp 100% quality the files are much smaller than when saving with 99% quality. E.g. a screenshot of a browser is 366K when saving at 99% quality and 197K when saving at 100% quality.
The quality setting in Qt image plugins controls compression, and with WebP, 100 forces lossless mode https://code.qt.io/cgit/qt/qtimageformats.git/tree/src/plugins/imageformats/webp/qwebphandler.cpp#n274