我有一個功能,使任何需要數量的「div」標籤與「畫布」標籤內。現在,我無法將數組中的單張照片加載到這些「畫布」標籤中。將圖像加載到畫布標籤系統
我有一個數組,其中有各種照片目錄存儲在其中,我想說的是加載該數組中的第一張圖片到第一個畫布標記,並將該數組中的第二個圖像加載到第二個畫布標記,所以上。
我從網絡上獲得了這些代碼片段,然後對它進行編輯以嘗試將其粘貼到我的項目中。
這會創建div和canvas標籤。
for (var item = 0; item < 3; item++) {
if (item % 5 == 0) {
document.write(item);
}
var div = document.createElement("div");
div.setAttribute('id', 100+item);
document.body.appendChild(div);
var canv = document.createElement("canvas");
canv.setAttribute('width', 400);
canv.setAttribute('height', 400);
canv.setAttribute('id', item);
div.appendChild(canv);
}
這是在指定的畫布標籤中加載圖像。我意識到回答我的問題的關鍵在於代碼的這一部分,但我對這個過程很陌生,並且我對與canvas標籤和圖像加載相關的方法沒有很好的瞭解。
var img=new Image();
img.onload=function(){
var can = document.getElementById('0');
var ctx = can.getContext('2d'); //creates canvas and image data
ctx.drawImage(img, 0, 0);
var imgdata = ctx.getImageData(0,0, img.width, img.height);
var data = imgdata.data;
}
非常感謝。另外,不是圖像加載到畫布中,我將如何使用.getImageData();並處理這些數據? – user2517142
此外,現在*圖像加載... – user2517142
我做了一個補充,我的答案顯示如何使用getImageData。該示例將其中一個畫布圖像的不透明度降低到25%。請注意CORS問題,禁止在單獨的域中使用getImageData。 – markE