Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // https://github.com/twolfson/gulp.spritesmith
- // Example task with retina setup:
- // @1x and @2x should have exact proportions
- // otherwise spritesmith throws:
- // Error: Normal sprite has inconsistent size with retina sprite.
- // details and workaround: https://github.com/twolfson/gulp.spritesmith/issues/57
- var spritesmith = require('gulp.spritesmith');
- var buffer = require('vinyl-buffer');
- var imagemin = require('gulp-imagemin');
- var del = require('del');
- var merge = require('merge-stream');
- gulp.task('sprites', function () {
- return del([
- path.join('path_to_compiled/sprite.png'),
- path.join('path_to_compiled/sprite.less')
- ])
- .then(function () {
- var spriteData = gulp.src('path_to_source/*.png')
- .pipe(spritesmith({
- retinaSrcFilter: ['path_to_source/*@2x.png'],
- imgName: 'sprite.png',
- retinaImgName: 'sprite@2x.png',
- cssName: 'sprite.less',
- imgPath: 'path_to_use_in_css/sprite.png'
- }));
- var imgStream = spriteData.img
- .pipe(buffer())
- .pipe(imagemin())
- .pipe('path_to_source_image_folder');
- var cssStream = spriteData.css
- .pipe('path_to_source_less_folder');
- return merge(imgStream, cssStream);
- });
- });
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement