图片压缩,在很多地方都用的到,是种实用性很高的技术。

国内外还有不少此类平台,专门进行图片压缩,比如tinypng。

而在nodejs中,要实现一个这类平台,不难,很容易。
NodeJS中进行图片压缩,可以选择三方模块:Imagemin。
imagemin
imagemin压缩效果更好,可以达到50%以上,支持jpg、png格式。
测试代码:

const imagemin = require('imagemin');
const imageminJpegtran = require('imagemin-jpegtran');
const imageminPngquant = require('imagemin-pngquant');
(async () => {
const files = await imagemin(['images/*.{jpg,png}'], {
destination: 'build/images',
plugins: [
imageminJpegtran(),
imageminPngquant({
quality: [0.6, 0.8]
})
]
});
console.log(files);
//=> [{data: <Buffer 89 50 4e …>, destinationPath: 'build/images/foo.jpg'}, …]
})();
效果展示:


来看质量:

左侧为压缩前效果,右侧为压缩后效果,几乎无区别。
本文介绍如何使用NodeJS中的Imagemin模块进行图片压缩,通过示例代码展示压缩过程及效果,支持jpg、png格式,压缩率可达50%以上。
2885

被折叠的 条评论
为什么被折叠?



