同问,请问解决了吗? 第一次能调用成功,第二次就根本没调用。
组件内wx.canvasToTempFilePath({},this) 执行一次组件内需要用canvas生成图片,保存到本地 执行第一次操作,成功 再次执行相同操作 wx.canvasToTempFilePath 事件没有任何反应 现在我有多个生成图片按钮,想要多次执行,现在只能执行一次,再操作wx.canvasToTempFilePath完全不执行。 组件内结构 <view class="canvas__box"> <canvas canvas-id="myCanvas" style="width:{{canvasWidth}};height:{{canvasHeight}}" /> </view> js文件内 /** * 创建截图 */ createPoster: function () { const ctx = wx.createCanvasContext('myCanvas', this); ctx.setFillStyle('#fcfcfc'); ctx.fillRect(0, 0, 500, 500); ctx.draw(); } /** * 生成图片 */ saveToAlbumn: function () { var self = this; wx.canvasToTempFilePath({ canvasId: 'myCanvas', quality: 1, fileType: 'jpg', success: function (res) { var tempFilePath = res.tempFilePath; wx.saveImageToPhotosAlbum({}) } },this) }
2018-06-15同遇到,刚解决。 wx.downloadFile的图片必须是https,并且在后台把图片的域名填写到downloadFile合法域名 这样真机就能画上去了。
canvas drawImage方法drawImage方法绘制网络图片在真机上不显示?
2018-06-14同遇到,刚解决。 wx.downloadFile的图片必须是https,并且在后台把图片的域名填写到downloadFile合法域名 这样真机就能画上去了。
drawImage 绘制图像到画布,在真机上怎么显示不了这是其中一段代码。图片都是先用[代码]wx.downloadFile[代码]拿到[代码]tempFilePath[代码],然后把[代码]tempFilePath[代码]作为第一个参数传入 [代码]ctx.drawImage[代码]第一个参数来绘制的。 但是真机上没有显示出来,微信工具的模拟器头像已经是出来的了,拿手机预览,是空的 wx.downloadFile({ url: that.data.avatarUrl, success: function (sres) { console.log(sres); //this.data.avatarUrl = sres.tempFilePath that.setData({ avatarUrl: sres.tempFilePath }) }, fail: function (fres) { console.log('参数错误') } }) ctx.drawImage(that.data.avatarUrl, 160, 25, 50, 50); wx.drawCanvas({ canvasId: 'my_Canvas', actions: ctx.getActions(), reserve: true })
2018-06-14