0
我想從畫布獲取像素數據。已經有一個使用KineticJS庫構建的現有和正在運行的動畫。我現在要做的就是獲取特定方塊中某些像素的rgb值。從畫布獲取像素數據與KineticJS
通過使用:
console.log(document.getElementsByTagName('canvas'));
我已經計算出,存在由KineticJS產生2個畫布。我試圖把工作用下面的代碼完成:
var canvas = document.getElementsByTagName('canvas')[0];
var context = canvas.getContext("2d");
var imageData = context.getImageData(20, 20, 10, 10);
然而,這引起了一個錯誤:遺漏的類型錯誤:無法調用未定義的方法「的getContext」(我試過兩個[0]和[1] )。這裏的原因是,document.getElementsByTagName('canvas')應該給我一個Node-List,我認爲我能夠獲得一個畫布對象。
使用上面提到的console.log()我已經看到有兩個畫布對象,但我無法獲取其中任何一個的上下文。
有沒有人有關如何讓這3行代碼工作的提示?
另外,如果有在舞臺上超過1層,你可以使用得到真正的背景下特定層(有用這種方法):var realContext = layer.getContext()._ context; – markE
Hello lavrton&MarkE。 它的工作!問題的確在於當層還沒有添加到舞臺上時我插入了代碼。這些圖層被添加到imageObj.onload函數的舞臺上(我加載背景圖片)...感謝您的幫助! – Pnpako