2013-08-27 45 views
0

我有腳本:獲取像素 - KineticJS

// Inicializa帆布CON EL農佈雷 「舞臺」 ...... VAR階段=新Kinetic.Stage({ 容器: '容器' , width:578, height:200 }); var layer = new Kinetic.Layer();

var rectX = stage.getWidth()/2 - 50; 
    var rectY = stage.getHeight()/2 - 25; 


    var box = new Kinetic.Rect({ 
     x: 100, 
     y: 100, 
     width: 200, 
     height: 50, 
     fill: '#0080C0', 
     stroke: 'black', 
     strokeWidth: 4, 
     draggable: true 
    }); 


    layer.add(box); 
    stage.add(layer); 


我需要獲取像素(X/Y)10,20與KineticJS,但我不能使用getImageData因爲KineticJs的帆布都沒有ID。

謝謝!

PS:對不起,我的英語。

回答

0

您不需要ID就可以選擇KineticJS畫布,因爲它畢竟是一個畫布。請注意Kinetic爲每個圖層使用2個畫布。

$('#container canvas').click(function(e) { 
    var x = 10; 
    var y = 20; 
    var ctx = this.getContext('2d'); 
    var pixelData = ctx.getImageData(x, y, 1, 1).data; 
});