mirror of
https://github.com/konvajs/konva.git
synced 2026-03-03 16:58:33 +08:00
Better NodeJS support (full stage support)
This commit is contained in:
@@ -1,11 +1,13 @@
|
||||
var fs = require('fs'),
|
||||
Kinetic = require('./kinetic');
|
||||
Kinetic = require('./dist/kinetic-dev');
|
||||
|
||||
var layer = new Kinetic.Layer({
|
||||
width : 200,
|
||||
height : 200
|
||||
var stage = new Kinetic.Stage({
|
||||
width : 100,
|
||||
height : 100
|
||||
});
|
||||
|
||||
var layer = new Kinetic.Layer();
|
||||
stage.add(layer);
|
||||
var rect = new Kinetic.Rect({
|
||||
width : 100,
|
||||
height : 100,
|
||||
@@ -21,9 +23,45 @@ var text = new Kinetic.Text({
|
||||
});
|
||||
layer.add(rect).add(text);
|
||||
layer.draw();
|
||||
stage.setSize({
|
||||
width : 200,
|
||||
height : 200
|
||||
});
|
||||
|
||||
var stream = layer.createPNGStream();
|
||||
var file = fs.createWriteStream(__dirname + '/helloworld.png');
|
||||
stream.on('data', function(chunk) {
|
||||
file.write(chunk);
|
||||
});
|
||||
// check tween works
|
||||
var tween = new Kinetic.Tween({
|
||||
node : rect,
|
||||
duration : 1,
|
||||
x : -50
|
||||
});
|
||||
tween.play();
|
||||
|
||||
setTimeout(function(){
|
||||
stage.toDataURL({
|
||||
callback: function(data){
|
||||
// adding image to stage
|
||||
var img = new Kinetic.window.Image();
|
||||
img.onload = function() {
|
||||
var image = new Kinetic.Image({
|
||||
image : img,
|
||||
x : 10
|
||||
});
|
||||
layer.add(image);
|
||||
layer.draw();
|
||||
// save stage to disk
|
||||
stage.toDataURL({
|
||||
callback: function(data){
|
||||
console.log(1);
|
||||
var base64Data = data.replace(/^data:image\/png;base64,/,"");
|
||||
|
||||
fs.writeFile("out.png", base64Data, 'base64', function(err) {
|
||||
console.log(err);
|
||||
});
|
||||
}
|
||||
});
|
||||
};
|
||||
img.src = data;
|
||||
|
||||
}
|
||||
});
|
||||
}, 1050);
|
||||
Reference in New Issue
Block a user