上传前先压缩能省一半以上流量,手机拍的原图动辄好几兆。
用 canvas 把图缩到目标长边,再导出为 jpeg,质量从 0.8 起调。
体积还不够就换 webp,同画质下比 jpeg 小不少。
超过几百 KB 再压,小图二次编码反而会变大。
const canvas = document.createElement('canvas');
// 长边压到 1600,质量 0.8,再从 canvas 取 blob
canvas.toBlob(b => upload(b), 'image/jpeg', 0.8);
THE END






暂无评论内容