想寻找一款压缩图片大小的库。
背景: 我是用 vscode 中使用 paste image 给自己的 markdown 插入截图,大部分是 png 图,有些比较大需要压缩一下。
我谷歌搜索了一些压缩图片的方法:
pic.save("a.png",optimize=True,quality=80)
压缩, 35K 能到 27K ,压缩效率不太高( png quality 再降低不会有影响了)p.save('a.png.webp', 'webp', optimize = True, quality = 88)
35K 压缩到 15K, 质量刚好能接受,不过体积希望尽可能小p.save('a.png.webp', 'webp', optimize = True, quality = 50)
到 8k 图片质量有点糊了,不理想。8-bit/color RGBA
转成了 8-bit colormap
有更好的离线方案、库吗?
![]() | 1 zcf0508 2022-07-02 19:53:46 +08:00 via Android ![]() |
2 dcsuibian 2022-07-02 19:55:15 +08:00 ![]() Squoosh ? |
![]() | 3 sommio 2022-07-02 20:05:21 +08:00 via Android ![]() jpeg: imagemagick, graphicsmagick webp: google/libwebp |
4 a132811 OP 看起来 Squoosh 可以,离线并提供 api |
![]() | 5 kkocdko 2022-07-02 20:53:48 +08:00 ![]() 我的方案是,先使用 pngquant 有损压缩(优化色板),再使用 cwebp 无损压缩为 ebp 图片。 成品如图: https://kkocdko.site/res/20210612-0010-001.webp ,按下 F12 可以看到图片体积。 上边提到的工具: https://github.com/kornelski/pngquant https://chromium.googlesource.com/webm/libwebp |
![]() | 6 foam 2022-07-02 23:15:57 +08:00 可以试试 libvip. python 对应的 binding 应该是 https://github.com/libvips/pyvips |
![]() | 7 thedrwu 2022-07-02 23:31:42 +08:00 via Android pngout ,但是效果不如 tinypng |
8 littleJohn 2022-07-02 23:39:55 +08:00 ![]() 我一直在用 utool |
![]() | 9 abcyuxue123 2022-07-02 23:41:29 +08:00 tinypng +1 |
10 ByteCat 2022-07-03 00:17:20 +08:00 Squoosh ,Google 开源的方案,用了很久了感觉还可以 |
![]() | 11 AItsuki 2022-07-03 01:09:35 +08:00 换一个截图工具?例如 Snipaste ,可以设置截图的质量。 |
![]() | 12 mikewang 2022-07-03 01:12:56 +08:00 ![]() JPEG 压缩:mozjpeg ,支持无损压缩优化(输入输出均为 JPEG ) PNG 压缩:pngquant ,使用该技术的有tinypng.com https://squoosh.app 使用 WebAssembly 集成了以上工具,可以在前端完成压缩操作。 |
13 zhuweiyou 2022-07-03 07:42:10 +08:00 我在线用 tinypng, 离线用 pngyu |
![]() | 14 soraginko 2022-07-03 07:54:51 +08:00 via Android squoosh 超好用 |
![]() | 15 610915518 2022-07-03 10:01:54 +08:00 如果对图片质量要求不那么高,png 转成 jpg 更好 |
![]() | 16 dingdangnao 2022-07-03 11:49:20 +08:00 只有我一个人在用 pp 鸭么 https://ppduck.com |
![]() | 17 iyour 2022-07-03 11:50:52 +08:00 https://www.photofun.cn/compress/,同样采用 squoosh 实现的完全基于本地处理的图片压缩工具 |
![]() | 18 iyour 2022-07-03 11:51:41 +08:00 |
![]() | 19 kergee 2022-07-03 12:43:19 +08:00 PPDUCK |
![]() | 21 Dvel 2022-07-03 15:19:29 +08:00 $ brew install webp $ cwebp input_file.png -o output_file.webp |
![]() | 22 msg7086 2022-07-03 15:42:58 +08:00 不同的图片压缩方法是不同的。 照片类颜色丰富的图片,走图片压缩算法,JPG WEBP HEIC AVIF 等等。 截图类颜色单一的图片,走调色板压缩算法,比如 PNG8 这样的。 |
![]() | 23 Serino 2022-07-03 16:07:12 +08:00 我是用 Pinga 这个软件 png 压 webp ,选 lossy ,默认 80%的质量,最高压缩率 不知道为何 Pinga 压出来的 webp 图片质量比 Pillow 、OpenCV 或者 webp2jpg 要好, 用 Pillow 、OpenCV 或者 webp2jpg 转 jpg 或者 png 成 webp ,会丢失很多细节, 而 Pinga 选 lossy 和默认的 80%质量,压出来得 webp 和选无损压缩几乎没差,放大图片仔细看,噪点细节都还在,但图片大小要小很多 可惜这个软件不支持 jpg 直接转 webp ,我只能写了个 Python 脚本用 OpenCV ,先 jpg 无损转 png ,再转 webp |
24 moult 2022-07-03 16:35:16 +08:00 via iPhone 用微信发一下就好了,压到你怀疑人生。 |
![]() | 25 May725 2022-07-03 19:42:14 +08:00 |
![]() | 26 Showfom PRO |
27 9Tpsaajk9rdBKH2U 2022-07-04 05:34:14 +08:00 via iPhone iUploader 是一个免费开源的七牛云上传工具,可直接返回上传文件的地址;可以用作图床工具,进行图片的分享,当然不仅仅是图片。 软件介绍: iUploader 主要功能将文件上传至七牛云,返回 Markdown 格式的链接到剪贴板 **引入 pngquant , 提高 png 图片的压缩比,减少流量的损失,快速完成图片的加载** https://ichochy.com/posts/20190822.html 二年前个人开发的,功能还不是很完善,有些小 bug ,等我买了新电脑,再更新。 GitHub 上也有源码。 |
29 jifengg 2022-07-04 13:40:20 +08:00 离线库同推荐 pngquant ,之前对比过好多命令行压缩 png 的,对比下来还是 pngquant 最好。 他是有损的,是所谓的“视觉无损”,也就是肉眼几乎看不出差异。 |
30 ArvinLiu 2024-02-21 14:43:28 +08:00 |