我试图将反转颜色函数实现为我的函数,但是我不怎么用Cross Origin解决这个问题。

我试图使用“匿名”,但这也行不通。因此,问题很简单。如何正确使用此getImageData?

    var canvasOriginal = document.getElementById("imagemOriginal");
    var ctxOriginal = canvasOriginal.getContext("2d");

    var imgOriginal = new Image();
    var imgOut = new Image();

    imgOriginal.src = 'images-png/img1.png';

    imgOriginal.onload = function (){

        ctxOriginal.drawImage(imgOriginal,0,0,512,512);

        imgOut = ctxOriginal.getImageData(0,0,512,512);

        for (let i = 0; i < imgOut.data.length; i += 4) {
            imgOut.data[i] = 255 - imgOut.data[i];
            imgOut.data[i+1] = 255 - imgOut.data[i+1];
            imgOut.data[i+2] = 255- imgOut.data[i+2] ;
        }
        ctxOriginal.putImageData(imgOut, 512, 0);
    };

最佳答案

是的,我创建了一个本地主机,并且可以正常运行,但是必须在Google Chrome上添加一个名为“ Allow-Control-Allow-Origin”的扩展程序才能正常工作。谢谢!

关于javascript - 如何解决“ Canvas 已被跨源数据污染。”当我尝试使用getImageData时,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/57811302/

10-09 15:07