Adobe Air и Canvas не работят

Това трябва да е просто Air App. Използвам Dreamweaver CS5.5 и създавам Air App. Не мога да накарам Canvas да зареди изображение на функция. Мога да накарам изображението да се зареди при Load. Целта е да получите изображение, което да рисувате върху платно, след което да го преоразмерите и да го преоразмерите в DataURL към img таг. какво правя грешно Ето кода:

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<script>
function getImage(url){
var canvas = document.getElementById("canvas");
var context = canvas.getContext("2d");
var img = new Image();
img.src=url;
img.onload = function(){
context.drawImage(img, 0,0,width,height);

var dataurl = canvas.toDataURL();
document.getElementById('image').src = dataurl;
};

var MAX_WIDTH = 140;
var MAX_HEIGHT = 200;
var width = img.width;
var height = img.height;

if (width > height) {
  if (width > MAX_WIDTH) {
    height *= MAX_WIDTH / width;
    width = MAX_WIDTH;
  }
} else {
  if (height > MAX_HEIGHT) {
    width *= MAX_HEIGHT / height;
    height = MAX_HEIGHT;
  }
}

canvas.width = width;
canvas.height = height;

}

</script>
</head>

<body>
<canvas id="canvas"></canvas>
<img id="image" src="" />
<button onClick="javascript:getImage('https://www.google.com/images/srpr/logo3w.png');">Get Image</button>
</body>
</html>

person user899641    schedule 10.04.2012    source източник
comment
Разбрахте ли някога това? Сблъсквам се със същия проблем.   -  person Boyd    schedule 11.09.2012


Отговори (1)


Мисля, че този ред ви създава проблеми:

<button onClick="javascript:getImage('https://www.google.com/images/srpr/logo3w.png');">Get Image</button>

Кодът, дефиниран във връзка с помощта на javascript: URL схемата, се игнорира в тестовата среда на приложението. Не се генерира опасна грешка в JavaScript.

person Zik Uralov    schedule 16.10.2013