|
Server IP : 10.107.20.4 / Your IP : 216.73.217.92 Web Server : Apache System : Linux webm004.cluster107.gra.hosting.ovh.net 5.15.206-ovh-vps-grsec-zfs-classid #1 SMP Fri May 15 02:41:25 UTC 2026 x86_64 User : simfexinjt ( 803937) PHP Version : 7.1.33 Disable Function : _dyuweyrj4,_dyuweyrj4r,dl MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON Directory (0755) : /home/simfexinjt/www/wp-includes/../wp-admin/../node_modules/gulp.spritesmith/docs/ |
| [ Home ] | [ C0mmand ] | [ Upload File ] |
|---|
// Load in dependencies
var gulp = require('gulp');
var buffer = require('vinyl-buffer');
var csso = require('gulp-csso');
var imagemin = require('gulp-imagemin');
var merge = require('merge-stream');
var phantomjssmith = require('phantomjssmith');
var yaml = require('js-yaml');
var spritesmith = require('../');
// Define our tasks
gulp.task('sprite', function () {
// Collect png's from images folder and output a .png spritesheet and CSS classes
// Alternative outputs include: SASS, Stylus, LESS, JSON
var spriteData = gulp.src('images/*.png').pipe(spritesmith({
imgName: 'sprite.png',
cssName: 'sprite.css',
algorithm: 'binary-tree'
}));
return spriteData.pipe(gulp.dest('path/to/output/'));
});
gulp.task('sprite-pipeline', function () {
// Generate our spritesheet
var spriteData = gulp.src('images/*.png').pipe(spritesmith({
imgName: 'sprite.png',
cssName: 'sprite.css'
}));
// Pipe image stream through image optimizer and onto disk
var imgStream = spriteData.img
// DEV: We must buffer our stream into a Buffer for `imagemin`
.pipe(buffer())
.pipe(imagemin())
.pipe(gulp.dest('path/to/image/folder/'));
// Pipe CSS stream through CSS optimizer and onto disk
var cssStream = spriteData.css
.pipe(csso())
.pipe(gulp.dest('path/to/css/folder/'));
// Return a merged stream to handle both `end` events
return merge(imgStream, cssStream);
});
gulp.task('sprite-algorithm', function () {
var spriteData = gulp.src('images/*.png').pipe(spritesmith({
imgName: 'sprite.png',
cssName: 'sprite.styl',
algorithm: 'alt-diagonal'
}));
return spriteData.pipe(gulp.dest('examples/algorithm/'));
});
gulp.task('sprite-engine', function () {
var spriteData = gulp.src('images/*.png', {read: false}).pipe(spritesmith({
imgName: 'sprite.png',
cssName: 'sprite.styl',
engine: phantomjssmith
}));
return spriteData.pipe(gulp.dest('examples/engine/'));
});
gulp.task('sprite-padding', function () {
var spriteData = gulp.src('images/*.png').pipe(spritesmith({
imgName: 'sprite.png',
cssName: 'sprite.styl',
padding: 20 // Exaggerated for visibility, normal usage is 1 or 2
}));
return spriteData.pipe(gulp.dest('examples/padding/'));
});
gulp.task('sprite-retina', function () {
var spriteData = gulp.src('retina-images/*.png').pipe(spritesmith({
// This will filter out `fork@2x.png`, `github@2x.png`, ... for our retina spritesheet
// The normal spritesheet will now receive `fork.png`, `github.png`, ...
retinaSrcFilter: ['retina-images/*@2x.png'],
imgName: 'sprite.png',
retinaImgName: 'sprite@2x.png',
cssName: 'sprite.styl'
}));
return spriteData.pipe(gulp.dest('examples/retina/'));
});
gulp.task('sprite-handlebars-template', function () {
var spriteData = gulp.src('images/*.png').pipe(spritesmith({
imgName: 'sprite.png',
cssName: 'sprite.css',
cssTemplate: 'handlebarsStr.css.handlebars'
}));
return spriteData.pipe(gulp.dest('examples/handlebars-template/'));
});
gulp.task('sprite-handlebars-inheritance', function () {
var spriteData = gulp.src('images/*.png').pipe(spritesmith({
imgName: 'sprite.png',
cssName: 'sprite.scss',
cssTemplate: 'handlebarsInheritance.scss.handlebars'
}));
return spriteData.pipe(gulp.dest('examples/handlebars-inheritance/'));
});
gulp.task('sprite-template-function', function () {
var spriteData = gulp.src('images/*.png').pipe(spritesmith({
imgName: 'sprite.png',
cssName: 'sprite.yml',
cssTemplate: function (data) {
// Convert sprites from an array into an object
var spriteObj = {};
data.sprites.forEach(function (sprite) {
// Grab the name and store the sprite under it
var name = sprite.name;
spriteObj[name] = sprite;
// Delete the name from the sprite
delete sprite.name;
});
// Return stringified spriteObj
return yaml.safeDump(spriteObj);
}
}));
return spriteData.pipe(gulp.dest('examples/template-function/'));
});
// Define common task for all
gulp.task('sprite-all', [
'sprite',
'sprite-pipeline',
'sprite-algorithm',
'sprite-engine',
'sprite-padding',
'sprite-retina',
'sprite-handlebars-template',
'sprite-handlebars-inheritance',
'sprite-template-function'
]);