1
이미지의 픽셀 색상을 얻으려고 노력 중입니다. 픽셀의 RGB 값을 가져 와서 점프하고 배열에 저장해야하지만 콘솔은 항상 [0, 0, 0 ...]을 반환합니다.JavaScript 캔버스에서 이미지의 색상 픽셀 얻기
더 좋은 방법으로 어떻게해야하는지 알고 계십니까?
내 코드는 다음과 같습니다
function captureImageData(image)
{
var cnv = document.createElement('canvas');
cnv.width = image.width;
cnv.height = image.height;
var ctx = cnv.getContext('2d');
ctx.drawImage(image, 0, 0);
var imageData = ctx.getImageData(0, 0, 200, 100);
var data = imageData.data;
var height = imageData.height;
var width = imageData.width;
for (var y = 0; y < 100; y += 2)
{
for (var x = 0; x < 200; x += 2)
{
red.push(data[(y * imageData.width + x) * 4 + 0]);
green.push(data[(y * imageData.width + x) * 4 + 1]);
blue.push(data[(y * imageData.width + x) * 4 + 2]);
alpha.push(data[(y * imageData.width + x) * 4 + 3]);
}
}
console.log(red);
}
감사합니다! 귀하의 예제가 완벽하게 작동합니다 .. 내 오류가 어떻게 이미지를로드하는 것 같아요. XML 파일에서 읽은 많은 이미지가 있고 모든 이미지를로드하여 픽셀을 읽고 배열로 저장해야합니다. XML에서 이미지를 읽을 때 내 오류가 발생했다고 생각합니다. – eledgaar