<canvas canvas-id="photo_canvas" style="width:{{canvasWidth}}px;height:{{canvasHeight}}px;"> </canvas> wx.chooseImage({ count: 1, sizeType: ['compressed'], success: function (photo) { wx.getImageInfo({ src: photo.tempFilePaths[0], success: function (res) { var ctx = wx.createCanvasContext('photo_canvas'); console.log(res.height) console.log(res.width) // 设置目标图片大小 var towidth = Math.trunc(res.width / 10); var toheight = Math.trunc(res.height / 10); // 设置 canvas大小 _this.setData({ canvasWidth: towidth, canvasHeight: toheight }) // 压缩并画图 ctx.drawImage(photo.tempFilePaths[0], 0, 0, res.width, res.height,0,0,towidth,toheight) //画图完成时获取图片tmp地址并上传 ctx.draw(false,function(){ wx.canvasToTempFilePath({ canvasId: 'photo_canvas', success: function (res) { wx.uploadFile({ url: 'http://', filePath: res.tempFilePath, name: 'img', success: function (res) { console.log(res) } }) } }, this) }) ———————————————— 原文链接:https://blog.csdn.net/weixin_42393923/article/details/83617265