wx.canvasToTempFilePath生成图片第一次为全透明的问题
发布于 7 年前 作者 gaolei 8754 次浏览 来自 问答

基础库: 1.5.3

iOS

第一次会生成一张透明的图片,后面变正常。

望解答,谢谢~

9 回复

添加延迟解决

能具体一点吗?

在组件中使用

wx.canvasToTempFilePath()

怎么延迟好像都没有效果?

真的可以,非常感谢!

const ctx = wx.createCanvasContext(‘myCanvas’)

ctx.drawImage(_this.data.imageSrc)

ctx.draw();

setTimeout(function () {

_this.drawAfter()

}, 500);

drawAfter: function () {

var _this = this

var canvasW = _this.data.cutW / _this.data.cropperW * _this.data.imageW / pixelRatio

var canvasH = _this.data.cutH / _this.data.cropperH * _this.data.imageH / pixelRatio

var canvasL = _this.data.cutL / _this.data.cropperW * _this.data.imageW / pixelRatio

var canvasT = _this.data.cutT / _this.data.cropperH * _this.data.imageH / pixelRatio

wx.canvasToTempFilePath({

x: canvasL,

y: canvasT,

width: canvasW,

height: canvasH,

destWidth: canvasW,

destHeight: canvasH,

canvasId: ‘myCanvas’,

success: function (res) {

wx.hideLoading()

// 成功获得地址的地方

console.log(‘生成图片成功:’ + res.tempFilePath)

_this.uploadImg(res.tempFilePath);

}

})

},

我这也是同样的问题

怎么解决的

回到顶部