前端图片压缩 pngquanty

本文介绍了一种有效的PNG图片压缩工具pngquant,它能在保持图片视觉效果的同时大幅度减小文件大小,压缩率可达70%。文章详细讲解了pngquant的使用方法及如何通过批处理实现图片批量压缩。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

进行前端开发,必然会用到图片压缩,在尽可能小的改变图片视觉效果前提下,尽可能大的压缩图片大小,进行png 图片压缩常用 pngquant,在服务器上
上传压缩过后的图片,以节省载宽

Official website url:

https://pngquant.org/

pngquant 大概能压缩70%左右;800k => 24k

使用方式: c 语言书写的exe文件,导入图片,目标目录输入压缩后的图片

1.Png 简单介绍。

我们知道Png 有4个通道,RGBA, 多了一个表示透明的。png 有 png 32, 24, 8 等。 大致我理解的是表示颜色的多少。 数字越小,文件就越小。常见的压缩方式是导入一张图到做图软件中,然后导出png 8,并且带 alpha,这样就达到压缩目的。当然是有损的压缩。一张张图弄很麻烦,我在想有没有C++代码可以搞定的,然后做个简单软件批量压缩png。

2.pngquant 使用

去google 发现了这个东西,打开主页看了了,非常不错。 地址:http://pngquant.org/

能把一个png平均压缩掉70%,而且肉眼看不出有很大的损耗。当然输出的质量也是可控制的。

原图,1024×1024 877KB

这里写图片描述

选50质量压缩后的图:1024×1024 208KB,压缩率高达0.23
这里写图片描述

3.windows 下简单使用批处理循环处理所有png

pngquant 是有在github上host了整个lib的代码。是c代码。可以用。不过官方有写好的exe,可以直接拿来用。用法:

具体例子:

pngquant -f –ext .png –quality 50-50 Ui.png (以50质量来处理图片,直接覆盖掉原图片)

我们可以做一个批处理:新建一个txt,后缀改成bat,写入下面内容(当然你质量可以作为用户输入的变量):

echo "开始处理..."

for /R %%i in (*.png) do (
  pngquant -f --ext .png --quality 50-50 "%%i"
)
pause

我从80质量测试到20,发现50比较接近做图软件导出的png 8格式。不过80质量的压缩效率已经非常高了,强烈建议使用80。
4.批处理和pngquant打包下载地址

http://www.waitingfy.com/?attachment_id=1152

下载会得到pngquant.exe 和Compression.bat, 拷贝到你要批量压缩png的文件夹里,点击Compression.bat就会批量压缩png了。

注意:会替换原图,请单独复制一份资源来操作!!

如果你是mac或者linux用户,请到官方下载对应版本,使用命令的形式。用find xx。

参考文献:http://www.tuicool.com/articles/UjAbuu

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值