小程序
小游戏
企业微信
微信支付
扫描小程序码分享
微信小程序中canvas.todataurl() 在微信开发工具和ios机型展示正确,安卓机型解析失败,base64格式的数据错误,全部展示AAAAAAA 导致图片展示不出来
1 个回答
加粗
标红
插入代码
插入链接
插入图片
上传视频
请具体描述问题出现的流程,并提供能复现问题的简单代码片段(https://developers.weixin.qq.com/miniprogram/dev/devtools/minicode.html)。
你好,麻烦通过点击下方“反馈信息”按钮,提供出现问题的。
关注后,可在微信内接收相应的重要提醒。
请使用微信扫描二维码关注 “微信开放社区” 公众号
请具体描述问题出现的流程,并提供能复现问题的简单代码片段(https://developers.weixin.qq.com/miniprogram/dev/devtools/minicode.html)。
loadedmetadata(e) {
console.log('视频初次加载完成', e)
this.duration = e.detail.duration
this.videoHeight = e.detail.height * (this.videoWidth / e.detail.width)
this.draw()
},
draw() {
const dpr = wx.getSystemInfoSync().pixelRatio
wx.createSelectorQuery().select('#video').context(res => {
console.log('select video', res)
this.videoBox = res.context
wx.createSelectorQuery().selectAll('#cvs1').node(res => {
console.log('select canvas', res)
const ctx = res[0].node
const ctx1 = res[0].node.getContext('2d')
res[0].node.width = this.videoWidth * dpr
res[0].node.height = this.videoHeight * dpr
this.canvasHeight = this.videoHeight + 'px'
this.canvasWidth = this.videoWidth
let videoContext = wx.createVideoContext('video')
videoContext.seek(2)
setTimeout(() => {
ctx1.drawImage(this.videoBox, 0, 0, this.videoWidth * dpr, this
.videoHeight *
dpr);
let imageSrc = ctx.toDataURL('image/png')
this.imageSrc = imageSrc
console.log('this.imageSrc', imageSrc)
}, 1000)
}).exec()
}).exec()
},