Chrome javascript图像到画布会导致图像为空
使用canvas.drawImage将图像转换为画布失败(但不会抛出错误),画布看起来透明且为空图像 并不是所有的图像文件都会出现这种情况,我不知道图像的哪个属性导致了这种情况,但我上传了一张有此问题的示例照片 我开始在ChromeV83-v84上遇到这个问题 firefox运行良好 我想上传一张指定的照片(其内部小提琴),并想从上传的图像制作画布和绘制画布,并将其显示在chrome上(chrome版本应大于或等于v85)Chrome javascript图像到画布会导致图像为空,javascript,Javascript,使用canvas.drawImage将图像转换为画布失败(但不会抛出错误),画布看起来透明且为空图像 并不是所有的图像文件都会出现这种情况,我不知道图像的哪个属性导致了这种情况,但我上传了一张有此问题的示例照片 我开始在ChromeV83-v84上遇到这个问题 firefox运行良好 我想上传一张指定的照片(其内部小提琴),并想从上传的图像制作画布和绘制画布,并将其显示在chrome上(chrome版本应大于或等于v85) 它在我的机器上工作。可能与安全机制有关,防止画布绘制跨来源图像您使用的是
它在我的机器上工作。可能与安全机制有关,防止画布绘制跨来源图像您使用的是哪个版本的chrome?它在我的机器上工作。可能与防止画布绘制跨来源图像的安全机制有关您使用的是哪个版本的chrome?
function testimg(src) {
var img = document.createElement("img");
img.src = src;
document.querySelector('#test').appendChild(img)
}
$('#file').on('change', fileAdded)
function fileAdded(event) {
var reader = new FileReader;
reader.onload = function () {
var image = new Image();
image.src = reader.result;
image.onload = function () {
document.querySelector('#test').appendChild(this)
var imgToSend = processImg(this, this.width, this.height);
testimg(imgToSend)
};
};
reader.readAsDataURL(event.currentTarget.files[0]);
}
function processImg(image, srcWidth, srcHeight) {
var canvas = document.createElement('canvas');
canvas.width = srcWidth;
canvas.height = srcHeight;
var ctx = canvas.getContext("2d");
ctx.drawImage(image, 0, 0);
ctx.fill();
return canvas.toDataURL();
}