img-spriter
v2.0.0
Published
hello world
Downloads
12
Readme
img-spriter
image sprite generator
API
process(imageFrames )
Processed image objects, increase information field imageInfo
imageFrames
- Image arrayimageUrl
required, local file absolute path e.g: /User/home/a.png
// input
[{
imageUrl: '/Users/home/a.png'
}]
// output
[{
imageUrl: '/Users/home/a.png',
imageInfo: {
image: Stream,
width: Number,
height: Number,
}
}]
processHTTP(imageFrames )
Like the process
, but imageUrl
is a http link address
sprite(imageFrames [, options])
Image sprite generator
iamgeFrames
- Image arrayoptions
margin
- default: 5 Icon margin
@return
{
stream: Sprite image Stream,
dataSource: icon coordinate information
}
Example
var data = [{
imageUrl: 'http://img.alicdn.com/tps/i2/TB1fvaMLVXXXXbuXFXXEDhGGXXX-32-32.png',
filename: 'acd',
w: 32,
h: 32
}, {
imageUrl: 'http://img.alicdn.com/tps/i1/TB18_qELVXXXXaKXVXXEDhGGXXX-32-32.png',
filename: 'ac12312',
w: 32,
h: 32
}, {
imageUrl: 'http://img.alicdn.com/tps/i2/TB1sEiZLVXXXXXxXFXXEDhGGXXX-32-32.png',
filename: 'ac12312',
w: 32,
h: 32
}]
imgSpriter.processHTTP(data)
.then(function(data) {
imgSpriter.sprite(data)
.then(function(data) {
var spriteOutput = path.join(__dirname, './sprite.png');
fs.writeFileSync(
'./test/index-output.json',
JSON.stringify(data.dataSource, null, 2)
);
data.stream.pack()
.pipe(fs.createWriteStream(spriteOutput))
.on('finish', function() {
console.log('output image:', spriteOutput);
});
}).catch(function(err) {
console.log(err);
})
}).catch(function(err) {
console.log('========', err);
})