2011-11-26 222 views
0
var formElement2 = document.getElementById("recImage"); 
formElement2.addEventListener('click', recImagePressed, false); 

function recImagePressed(e){ 
    var outputCanvas = document.getElementById("outputCanvas"); 
    outputCtx = outputCanvas.getContext('2d'); 
    outputCTX.draw(); 
    outputCtx.drawImage(canvas2, 0, 0); 
} 

function draw() { 
      img = new Image(); 
      **img.src = context2.canvas2.toDataURL();** 
      fr1 = makeFrame(context2, makeVect(400,0), makeVect(400, 0), makeVect(0, 400)); 
      img.onload = function(){ 
       context2.save(); 
       newPainter = cornerSplit(imagePainter,5); 
       newPainter(fr1);  
       context2.restore(); 
       context2.save(); 
       newPainter(flipHorizLeft(fr1)); 
       context2.restore(); 
       context2.save(); 
       newPainter(flipVertDown(fr1)); 
       context2.restore(); 
       context2.save(); 
       newPainter(flipVertDown(flipHorizLeft(fr1))); 
      } 
     } 

我覺得問題出在這裏:img.src = context2.canvas2.toDataURL();如何將畫布圖像轉換爲函數?

正在調用的方法已經過測試並獨立於此特定的代碼塊工作。

+0

關於使用的語言的任何信息將是非常有用的... java? – DarkSquirrel42

+0

一切都是javaScript – mcgraw

+0

http://stackoverflow.com/questions/934012/get-image-data-in-javascript –

回答

0
img.src = context2.canvas2.toDataURL(); 

沒有任何意義。畫布上下文沒有名爲canvas2的屬性。使用變量canvas2(如果存在)或使用context2.canvas

因爲img甚至沒有被使用,所以很難說出你想要做什麼,但是如果你想在某個點上畫一個畫布到另一個畫布,你可以用一個畫布作爲參數使用drawImage,所以如果那是什麼你試圖做你不必製作圖像並使用toDataUrl。

+0

我有用戶生成的畫布圖像在一個窗口中,我想能夠檢索該圖像,貫穿當用戶點擊recImagePressed按鈕時,會有'draw'的功能 - 你可以在[link](http://mcgrawtheseeker.com/)看到目前爲止工作的狀態 - 感謝回覆 – mcgraw

1

您沒有在任何地方聲明的名稱爲context2的變量。這是你所擁有的(第一)原因不起作用的。

你想做什麼? Draw an image to a canvas?

+0

我在做什麼 - 使用這些.js函數[鏈接](http://edison.suu.edu/~grady/functional-javascript/picture-language.html) – mcgraw

+0

@ Phrogz - 在用戶創建的圖像上使用上述函數 - > Heres what我有工作,也許看到這將有所幫助 - 感謝[鏈接](http://mcgrawtheseeker.com/) – mcgraw