0
我越來越試圖創建畫布繪圖,但是當我使用toDataUrl時,它會返回空的畫布文件。toDataUrl觸發前圖像加載
這可能是因爲toDataUrl在我的圖像被加載之前已經觸發了,所以我如何改變它,以便我嘗試加載的圖像是canvas文件的一部分。
var canvas = document.getElementById("canvas");
var ctx = canvas.getContext("2d");
var img = new Image();
img.addEventListener("load", function() {
ctx.drawImage(img, 0, 0, 800, 420);
}, false);
img.src = "images/quizes/sim.png";
var img1 = new Image();
img.addEventListener("load", function() {
ctx.drawImage(img1, 0, 0, 320, 320);
}, false);
ctx.drawImage(img1, 0, 0, 320, 320);
img1.src = "images/users/alfred.jpg";
var img2 = new Image();
img.addEventListener("load", function() {
ctx.drawImage(img2, 480, 0, 320, 320);
}, false);
img2.src = "images/users/brynjar.jpg";
var dataURL = canvas.toDataURL();
$.ajax({
type: "POST",
url: "script.php",
data: {
imgBase64: dataURL
}
}).done(function(o) {
console.log('saved');
});
那麼你需要等待所有的圖像加載。 – epascarello
我該怎麼做? –
使用計數器。圖像加載,加計數器,看看是否全部加載。如果是,請致電下一步或查看承諾。 – epascarello