gpt4 book ai didi

javascript - 使用 imagemin-contrib (Grunt) 进行图像压缩

转载 作者:行者123 更新时间:2023-11-30 20:56:34 25 4
gpt4 key购买 nike

我想在 Grunt.js 中测试 imagemin-contrib。我随机选择了三张jpg图片(大小分别为44kb、92kb、77kb)并设置好文件夹和插件。

当我运行 imagemin grunt 任务时,我收到一条消息说照片已成功优化,但数字显示前两张照片的大小只减少了 5kb 或 10kb,第三张根本没有改变。

我想知道这对于“优化图像”来说是否正常?我原以为尺寸会急剧下降。难道我选择的图片已经优化过了?还是我编写 grunt 命令的方式?

下面是我用来执行 grunt 命令的代码:

module.exports = function(grunt) {

grunt.initConfig({

pkg: grunt.file.readJSON('package.json'),

//Image Min Plugin
imagemin: {
dynamic: {
files: [{
expand: true,
cwd: 'photos/',
src: ['**/*.{png,jpg,gif}'],
dest: 'photos/optim/'
}]
}
}


});

grunt.loadNpmTasks('grunt-contrib-imagemin');
grunt.registerTask('default', ['imagemin']);
};

最佳答案

一般信息

嗯,这完全取决于这些图像的原始状态。如果它们已经被压缩(例如,当使用 photoshop 导出时),它们几乎不能进一步压缩而不会降低质量。因此,您很可能不会通过优化获利很多。但是,如果这些是未压缩的图像,grunt-contrib-imagemin 会有很大帮助。

该插件可以很好地完成它应该做的事情,但很明显,如果质量下降,它不会压缩图像。它也不知道图像是否可以调整大小(这通常是一个很好的压缩)。如果您正在寻找最好的压缩,您可以运行 pagespeed insights ( https://developers.google.com/speed/pagespeed/insights/ ),它会告诉您是否可以进一步无损压缩图像以及您是否可以通过以不同的分辨率上传图像来优化图像.如果您想要/需要更多压缩,请考虑有损压缩,它可以节省大量 kbs 而质量损失很小。

optimizationLevel 选项:

尽管它不会对压缩大小产生太大影响,但可以将 optimizationLevel 选项设置为 0 到 7 之间的级别。它启用一组优化操作,并设置为默认为 3。您设置的级别越高,压缩操作的计算成本就越高(无论如何都不重要)。所以你可以将它设置为 7,看看它是如何影响压缩的:

imagemin: {
options: {
optimizationLevel: 7
}
dynamic: {
files: [{
expand: true,
cwd: 'photos/',
src: ['**/*.{png,jpg,gif}'],
dest: 'photos/optim/'
}]
}
}

The optimization level 0 enables a set of optimization operations that require minimal effort. There will be no changes to image attributes like bit depth or color type, and no recompression of existing IDAT datastreams. The optimization level 1 enables a single IDAT compression trial. The trial chosen is what OptiPNG thinks it’s probably the most effective. The optimization levels 2 and higher enable multiple IDAT compression trials; the higher the level, the more trials.

引用:https://github.com/gruntjs/grunt-contrib-imagemin

关于javascript - 使用 imagemin-contrib (Grunt) 进行图像压缩,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47599933/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com