1
66beta 2021-03-22 17:04:53 +08:00
|
2
alexkkaa 2021-03-22 17:13:38 +08:00 via Android
输出质量在 100, 你这个要求体积没办法缩啊。
|
3
abelyao OP |
5
youthfire 2021-03-22 17:42:20 +08:00
有没有试过 ImageOptim,质量控制在 90%或者 80%?
|
6
lonewolfakela 2021-03-22 17:53:51 +08:00
先确认一个问题:当你说“TinyPNG”的时候,你是不是其实想指的是 tinypng 网站上提供的 jpg 压缩功能而不是 png 压缩功能,或者换句话说,你想要的(以及在题目里作为对比的)其实是 TinyJPG ?
|
7
dawangyezi 2021-03-22 17:55:13 +08:00
从文件格式角度比较好解释这个问题:
* jpg 是基于整个图像中的区块使用压缩算法压缩后保存的。 * png 文件标准中有多种格式 o 调色板模式。文件头保存一个颜色表,然后保存每个像素的时候只存储颜色表索引 o 灰度图模式,如果你的图像是灰度的(有亮度的黑白),只需要保存每个像素点的亮度。 o 二值模式。假设你的图像只有黑和白,比如曲谱。那你可以用 1 个 bit 位保存一个像素点。 o 全彩模式,和 jpg 相同。 o 动图 因为日常使用的 png 大多是全彩模式的。tinyPNG 后端应使用的 pngquant 命令行工具或者相同的算法,将全彩模式的 png 图转换成调色板模式。这样,就可以通过减少颜色数量来达到降低质量,压缩图片的目的。 如果你确实有批量压缩质量的需求,可以先用工具批量转换成 png 再压缩图像质量。 批量处理图像可以用 imgmagic 工具组 |
8
lonewolfakela 2021-03-22 17:57:35 +08:00
@zhangyufei49 虽然楼主说的是 TinyPNG,但是我严重怀疑他一直就是指的是 TinyJPG,因为他说了什么“TinyPNG 压缩后的 jpg 质量”之类的。所以整个帖子的问题和 PNG 其实没啥关系,就是想找个好点的 JPEG 优化编码工具
|
9
wdy3334 2021-03-22 18:00:46 +08:00
TinyPNG 有 ps 插件版吧 那个没有限制次数吧
|
10
dawangyezi 2021-03-22 18:03:22 +08:00
再补充几个实用的说明:
1. 怎么选择用 png 还是 jpg 如果有透明通道,就用 png 。没有透明通道,图片中的颜色又很多,比如拍摄的大自然风景,用 jpg 。 2. 怎么选择 png 模式 颜色数量很少,有大面积的色块。比如动漫卡通,用调色板模式。 黑白照片,用灰度模式。 用作游戏动画中的遮照层,或者黑白曲谱(不需要抗锯齿),AI 轮廓识别,用二值图。 全彩模式适用日常图片。尤其在游戏和 app 资源中适用。 |
11
abelyao OP @lonewolfakela
其实我用的是 Tinify 这个域名的接口,因为 TinyPNG / TinyJPG 在线版限制最大图片体积为 5M 。 TinyPNG 和 TinyJPG 都是他们的品牌而已,实际不管通过哪个入口,都能压缩 jpg 图片,这里仅寻求 jpg 图片的压缩方案。 |
12
abelyao OP |
13
abelyao OP |
14
love 2021-03-22 18:44:21 +08:00
mozjpeg 为何要指定质量为 100 ??就不能指定到你能看出区别的分界点看看和 tinypng 大小差多少? tinypng 绝对不可能是 100
|
15
dawangyezi 2021-03-22 18:49:59 +08:00
@lonewolfakela 了解了, 那可以用这个: https://www.picdiet.com/zh-cn
|
16
dawangyezi 2021-03-22 18:54:21 +08:00
@zhangyufei49 tinypng 压缩后的质量不是 100,放到到一定倍数就能看出来和原图的差异。你用的 imagemin + mozjpeg 就挺好,
|
17
dawangyezi 2021-03-22 18:59:00 +08:00
@abelyao 可以用 imgemin + mozjpeg 这个方案。我对比了 tinypng 输出的颜色数量,你可以把质量调整到 65 - 70 之间
|
18
superrichman 2021-03-22 19:01:21 +08:00 via iPhone
irfanview 转图片,里面能转各种格式,还有一堆参数,自己去折腾看哪个组合合适。
|
20
oott123 2021-03-22 20:23:42 +08:00 via Android
|
22
mon6912640 2021-03-22 22:30:13 +08:00 via Android
一个账号每个月 500 次,当时我的做法是申请了十几个账号,把账号丢库里轮询执行
|
23
duola 2021-03-22 22:34:35 +08:00
难道用谷歌的压缩不好用? https://squoosh.app/
|
24
mon6912640 2021-03-22 22:38:16 +08:00 1
两年前的代码,不知道现在还能不能执行,把申请的 key 往代码里面的一个数组变量丢就是了,只要我申请足够多的 key,就能白嫖到底
https://github.com/mon6912640/TinyPngTool |
25
siknet 2021-03-22 23:36:18 +08:00 via Android
riot win 下的软件,可以批量处理
|
26
abelyao OP @mon6912640 同个 IP 地址用几十个 key 轮番上不会触发什么屏蔽吗,稳定的话我也想试试了…
|
27
ByteCat 2021-03-23 08:55:05 +08:00
https://squoosh.app/
Google 开源项目可以看看? |
29
xingshu1990 2021-03-23 11:10:58 +08:00
@abelyao #26 数量大的时候,上阿布云买 1 个小时的 IPdaili,IP 循环+上面帐号轮询。
|