首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >想象还不够谷歌网页速度洞察力吗?

想象还不够谷歌网页速度洞察力吗?
EN

Stack Overflow用户
提问于 2017-04-26 11:21:21
回答 2查看 1.5K关注 0票数 2

我已经用了一段时间了,但是几个月前我注意到谷歌页面的速度对我压缩的图片不满意。我尝试了所有的设置组合,但没有结果。也尝试了imagemin和直接jpegtran --尽管如此,在大型图像上,它提供了2-5%的压缩,而tinyfy提供了50%的压缩。当我使用一些云优化器(Tinify)时,它提供了正确的压缩。

我当前的任务如下:

代码语言:javascript
复制
gulp.task('imagemin', function() {
        return gulp.src(input_files)
            .pipe(newer(output_path))
            .pipe(imagemin([
                imagemin.gifsicle({interlaced: true}),
                imagemin.jpegtran({progressive: true}),
                imagemin.optipng({optimizationLevel: 7}),
                imagemin.svgo({plugins: [{removeViewBox: true}]})
            ],{verbose:true}).on('error', gutil.log))
            .pipe(gulp.dest(output_path));
});
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-05-23 14:57:41

我能得到的最好的(我想是无损的):

代码语言:javascript
复制
const imageminMozJpeg = require(config.nm + 'imagemin-mozjpeg');
const imageminPngQuant = require(config.nm + 'imagemin-pngquant');
gulp.task('imagemin', function() {
    return gulp.src(input_files)
        .pipe(newer(output_path))
        .pipe(imagemin([
            imagemin.gifsicle({interlaced: true}),
            imageminMozJpeg(),
            imageminPngQuant({quality:'85-100'}),
            imagemin.svgo({plugins: [{removeViewBox: true}]})
        ]))
        .pipe(gulp.dest(output_path));
});

Google仍然对响应性图像不满意,当实际大小更大时,在某些google页面速度分辨率上显示的大小=/

票数 2
EN

Stack Overflow用户

发布于 2017-05-22 18:49:29

我用https://www.npmjs.com/package/imagemin-jpeg-recompress来解决这个问题,它也可以用在Gulp中。

在我的例子中,我使用的是ES2015和Gulp 4,任务回调驻留在它们自己的文件中,但是您应该通过查看我的代码来了解这个概念:

代码语言:javascript
复制
'use strict';

import config from '../config';
import gulp from 'gulp';
import imagemin from 'gulp-imagemin';
import imageminJpegRecompress from 'imagemin-jpeg-recompress';

export default function() {
  return gulp.src([config.jekyll.imagedir + config.glob.deep.image])
    .pipe(imagemin([
      imagemin.gifsicle({interlaced: true}),
      imageminJpegRecompress({progressive: true, method: 'smallfry', quality: 'veryhigh'}),
      imagemin.optipng(),
      imagemin.svgo({plugins: [{cleanupIDs: false}]})
    ], {verbose: true}))
    .pipe(gulp.dest(config.jekyll.imagedir));
};

但是要注意,这意味着使用有损算法压缩JPEG文件,而https://github.com/imagemin/imagemin-jpegtran (默认情况下用于gulp-imagemin )只进行无损转换。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43632747

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档