mirror of
https://github.com/kremalicious/blog.git
synced 2025-02-01 12:29:49 +01:00
optimize jpg with jpegoptim
This commit is contained in:
parent
9121483a85
commit
e389e08841
@ -1,14 +1,15 @@
|
|||||||
'use strict'
|
'use strict'
|
||||||
|
|
||||||
import { src, dest, parallel, series, watch } from 'gulp'
|
import { src, dest, parallel, series, watch } from 'gulp'
|
||||||
import plugins from 'gulp-load-plugins'
|
import plugins from 'gulp-load-plugins'
|
||||||
import del from 'del'
|
import del from 'del'
|
||||||
import pkg from './package.json'
|
import pkg from './package.json'
|
||||||
import parallelize from 'concurrent-transform'
|
import parallelize from 'concurrent-transform'
|
||||||
import browser from 'browser-sync'
|
import browser from 'browser-sync'
|
||||||
import autoprefixer from 'autoprefixer'
|
import autoprefixer from 'autoprefixer'
|
||||||
import cssnano from 'cssnano'
|
import cssnano from 'cssnano'
|
||||||
import critical from 'critical'
|
import critical from 'critical'
|
||||||
|
import imageminJpegoptim from 'imagemin-jpegoptim'
|
||||||
|
|
||||||
// load plugins
|
// load plugins
|
||||||
const $ = plugins()
|
const $ = plugins()
|
||||||
@ -250,29 +251,24 @@ export const icons = () => src(iconset.icons)
|
|||||||
//
|
//
|
||||||
// Images
|
// Images
|
||||||
//
|
//
|
||||||
|
const imageminPlugins = [
|
||||||
|
$.imagemin.gifsicle({ interlaced: true }),
|
||||||
|
imageminJpegoptim(),
|
||||||
|
$.imagemin.optipng({ optimizationLevel: 5 }),
|
||||||
|
$.imagemin.svgo({ plugins: [{removeViewBox: false }]})
|
||||||
|
]
|
||||||
|
|
||||||
export const images = () =>
|
export const images = () =>
|
||||||
src([
|
src([
|
||||||
SRC + '/_assets/img/**/*',
|
SRC + '/_assets/img/**/*',
|
||||||
'!' + SRC + '/_assets/img/entypo'
|
'!' + SRC + '/_assets/img/entypo'
|
||||||
])
|
])
|
||||||
.pipe($.if(isProduction, $.imagemin({
|
.pipe($.if(isProduction, $.imagemin(imageminPlugins)))
|
||||||
optimizationLevel: 5, // png
|
|
||||||
progressive: true, // jpg
|
|
||||||
interlaced: true, // gif
|
|
||||||
multipass: true, // svg
|
|
||||||
svgoPlugins: [{ removeViewBox: false }]
|
|
||||||
})))
|
|
||||||
.pipe(dest(DIST + '/assets/img/'))
|
.pipe(dest(DIST + '/assets/img/'))
|
||||||
|
|
||||||
// optimize Jekyll generated images
|
// optimize Jekyll generated images
|
||||||
export const imagesGenerated = () => src(DIST + '/media/gen/**/*')
|
export const imagesGenerated = () => src(DIST + '/media/gen/**/*')
|
||||||
.pipe($.if(isProduction, $.imagemin({
|
.pipe($.if(isProduction, $.imagemin(imageminPlugins)))
|
||||||
optimizationLevel: 5, // png
|
|
||||||
progressive: true, // jpg
|
|
||||||
interlaced: true, // gif
|
|
||||||
multipass: true, // svg
|
|
||||||
svgoPlugins: [{ removeViewBox: false }]
|
|
||||||
})))
|
|
||||||
.pipe(dest(DIST + '/media/gen/'))
|
.pipe(dest(DIST + '/media/gen/'))
|
||||||
|
|
||||||
|
|
||||||
|
@ -53,7 +53,8 @@
|
|||||||
"gulp-stylus": ">=2.3.1",
|
"gulp-stylus": ">=2.3.1",
|
||||||
"gulp-svg-sprite": ">=1.2.2",
|
"gulp-svg-sprite": ">=1.2.2",
|
||||||
"gulp-uglify": ">=1.2.0",
|
"gulp-uglify": ">=1.2.0",
|
||||||
"gulp-util": ">=3.0.6"
|
"gulp-util": ">=3.0.6",
|
||||||
|
"imagemin-jpegoptim": ">=5.0.0"
|
||||||
},
|
},
|
||||||
"engines": {
|
"engines": {
|
||||||
"node": ">=5.0.0"
|
"node": ">=5.0.0"
|
||||||
|
Loading…
Reference in New Issue
Block a user