【发布时间】:2021-12-03 15:55:54
【问题描述】:
我正在尝试从客户端压缩图像,但出现错误 cvs = ctx.drawImage(file, 0, 0, 100, 100);
但是得到 1 kb 的黑色图像,需要帮助
selectImage(event: any){
if(event.target.files.length>0){
const file = event.target.files[0];
this.reader_img(file);
}
}
reader_img(file:File){
let reader = new FileReader();
reader.readAsDataURL(file);
reader.onload = function () {
if(!(reader.result)){
throw new Error(`error1`)
}
var img1 = new Image();
img1.src = reader.result.toString();
var cvs = document.createElement('canvas');
var ctx=cvs.getContext("2d");
if (!(ctx)) {
throw new Error(` error2`);
}
ctx.drawImage(img1, 400, 400);
console.log(cvs.toDataURL());
};
reader.onerror = function (error) {
console.log('Error: ', error);
};
}
【问题讨论】:
-
您声明了
ctx,但没有为变量分配任何内容。因此,它是未定义的。
标签: angular angularjs html5-canvas