仅支持浏览器运行的项目!!!
let img = new Image();>>>>> Image对象在浏览器环境下才存在
function (image){
let canvasWidth = image.width //图片原始长宽
let canvasHeight = image.height;
let base = canvasWidth / canvasHeight;
//设置画布最大宽度
if (canvasWidth > 600) {
canvasWidth = 600;
canvasHeight = Math.floor(canvasWidth / base);
}
let img = new Image();
img.src = imgPath; // 要压缩的图片
let canvas = document.createElement('canvas');
let ctx = canvas.getContext('2d');
canvas.width = canvasWidth;
canvas.height = canvasHeight;
// 清除画布
ctx.clearRect(0, 0, canvasWidth, canvasHeight);
// 将图片画到canvas上面 使用Canvas压缩
ctx.drawImage(img, 0, 0, canvasWidth, canvasHeight);
// canvas.toDataURL 返回的是一串Base64编码的URL
// 指定格式 PNG
let soImage = canvas.toDataURL("image/png");
//压缩完图片后再上传
upload(soImage);
}