2

我有几个使用 Imagemin 压缩的图像目录。我想将我的脚本添加到我的构建中,以便在添加新图像时自动压缩它们。我将如何检查图像是否已经压缩,因此它不会再次被压缩?到目前为止,该脚本纯粹用 JS 编写,使用 mozjpg 插件和 pngquant。

我希望这是一个尽可能多的自动化解决方案,而不必手动删除旧图像或创建新目录。

const imagemin = require('imagemin');
const imageminMozjpeg = require('imagemin-mozjpeg');
const imageminPngquant = require('imagemin-pngquant');


var images = ["15 directories"];

var i;
for (i = 0; i < 14; i++) {
  (async () => {
  	const files = await imagemin([images[i]], {
  		destination: images[i],
  		plugins: [
        imageminMozjpeg({
          quality: 70,
        }),
  		]
  	});

  	console.log(files);
  	//=> [{data: <Buffer 89 50 4e …&gt;, path: 'build/images/foo.jpg'}, …]
  })();

  (async () => {
  	const filesPNG = await imagemin([images[i]], {
  		destination: images[i],
  		plugins: [
        imageminPngquant({ quality: [0.6, 0.7] })
  		]
  	});

  	console.log(filesPNG);
  	//=> [{data: <Buffer 89 50 4e …&gt;, path: 'build/images/foo.jpg'}, …]
  })();
}

4

0 回答 0