tinypng ,也就是熊猫压缩是很多前端喜欢的压缩工具,官方提供了网站版,需要手动上传和下载图片,并且对于张数有限制,再使用的过程中有些繁琐,当然官方有提供nodejs的api版本,但是也有诸多限制。
看到网上有人用nodejs写了一段自动上传并压缩的代码,原文再下面
https://segmentfault.com/a/11...
我再原来的基础上做了一些小的修改
- 加入了随机ip绕过20张限制,
- 封装成了nodejs的接口,方便集成到脚手架中和在Electron中使用
修改后的大致思路是这样的。
- 递归获取本地文件夹里的文件
- 过滤文件,格式必须是
.jpg
.png
,大小小于5MB.(文件夹递归) 每次只处理一个文件(可以绕过20个的数量限制)- 每一次随机一个IP地址并且同步进行(提升压缩速度,绕过20张数量限制)
- 处理返回数据拿到远程优化图片地址
- 取回图片更新本地图片
贴上nodejsAPI 版的Github地址
再有了上面nodejs的版本后,再通过Electron就可以打包成客户端的形式,如果在不集成到脚手架的情况下也可以享受更加便利的压缩图片。
同样也贴上客户端版的Gihub地址
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。