搜尋

首頁  >  問答  >  主體

node.js - 大家用啥图片压缩工具? 如 tinypng, 智图, imagemin之类的?

为何imagemin的压缩量这么小?

高洛峰高洛峰2866 天前595

全部回覆(8)我來回復

  • 黄舟

    黄舟2017-04-17 13:15:15

    用預設元件和預設參數當然壓不下去,imagemin得自己搭配組件和參數啊。 。 。

    貼段自己寫的:

    gulp.task('imgmin', function() {
        var jpgmin = imageminJpegRecompress({
                accurate: true,//高精度模式
                quality: "high",//图像质量:low, medium, high and veryhigh;
                method: "smallfry",//网格优化:mpe, ssim, ms-ssim and smallfry;
                min: 70,//最低质量
                loops: 0,//循环尝试次数, 默认为6;
                progressive: false,//基线优化
                subsample: "default"//子采样:default, disable;
            }),
            pngmin = imageminOptipng({
                optimizationLevel: 4
            });
        gulp.src(srcImage)
            .pipe(imagemin({
                use: [jpgmin, pngmin]
            }))
            .pipe(gulp.dest(dstImage));
    });

    壓縮jpeg和png效果還行,其它格式一直摸不到門所以就用預設處理了。


    工具類的軟體, 目前我用的是Antelope, 檔案往裡一拖直接點優化就行了.

    回覆
    0
  • PHPz

    PHPz2017-04-17 13:15:15

    寫幾行程式碼,自己壓縮

    回覆
    0
  • 巴扎黑

    巴扎黑2017-04-17 13:15:15

    http://www.atool.org/pngcompression.php 自己做的,支援jpg png,效果絕對屌…

    回覆
    0
  • PHP中文网

    PHP中文网2017-04-17 13:15:15

    我用了這個插件https://www.npmjs.com/package/gulp-tinypng-compress
    優點是壓縮效果很好,圖片品質也有保證,因為用的是https://tinypng. com他的api.
    缺點是時間特別長,每月有數量限制

    回覆
    0
  • 伊谢尔伦

    伊谢尔伦2017-04-17 13:15:15

    我用lwip

    回覆
    0
  • PHPz

    PHPz2017-04-17 13:15:15

    fis3已內置,忘了

    回覆
    0
  • 伊谢尔伦

    伊谢尔伦2017-04-17 13:15:15

    Pngquant

    回覆
    0
  • 高洛峰

    高洛峰2017-04-17 13:15:15

    npm中不是有imagemin模組,我個人喜歡用gulp;
    可以參考官方提供的demo, 官方demo使用const請修改成varconst是es6語法。

    const gulp = require('gulp');
    const imagemin = require('gulp-imagemin');
    const pngquant = require('imagemin-pngquant');
     
    gulp.task('default', () => {
        return gulp.src('src/images/*')
            .pipe(imagemin({
                progressive: true,
                svgoPlugins: [{removeViewBox: false}],
                use: [pngquant()]
            }))
            .pipe(gulp.dest('dist/images'));
    });

    回覆
    0
  • 取消回覆