- canvas保存图片为空白?
[图片][图片] 代码部分 happyNow() { console.log(1) // 获取并设置画布的信息 const canvasQuery = wx.createSelectorQuery() canvasQuery.select('#MyCanvas') .fields({ node: true, size: true, rect: true }) .exec(this.CanvasInit.bind(this)) }, CanvasInit(res) { console.log(res) const width = res[0].width const height = res[0].height const canvas = res[0].node const ctx = canvas.getContext('2d') const dpr = wx.getSystemInfoSync().pixelRatio canvas.width = width * dpr canvas.height = height * dpr ctx.scale(dpr, dpr) //画布背景颜色 ctx.fillStyle = '#fff' ctx.fillRect(0, 0, width, height) // 绘制图片 const img = canvas.createImage() img.src = ImgPath img.onload = () => ctx.drawImage(img, 0, 0, this.widthImg, this.heightImg) // 绘制文字部分 console.log(this.widthImg) ctx.fillStyle = "#000000" ctx.font = "normal 18px Arial" ctx.fillText(this.time, 18, this.heightImg + 20) ctx.fillText(this.wea, 150, this.heightImg + 20) this.canvasText(ctx) wx.canvasToTempFilePath({ canvas: canvas, x:0, y:0, width:width, height:height, destWidth:width, destHeight:height, success:res=>{ console.log(res.tempFilePath)//http://tmp/3ifoGRo7kGKW1cc162bcbe1b93b416a623f78e0d96d9.png 这个图片无法打开 this.saveTempFilePath = res.tempFilePath }, fail:err=>{ console.log(err) } }) }, canvasText(ctx) { let num = parseInt(this.userText.length / 14) console.log(num) let aa = this.userText.length % 14 ctx.font = "normal 16px Arial" ctx.fillText(this.userText.substr(14 * num + aa, aa), 0, this.heightImg + 38) for (let a = 0; a <= num; a++) { ctx.font = "normal 16px Arial" ctx.fillText(this.userText.substr(a * 14, 14), 0, this.heightImg + 40 + a * 16) } }, saveCnavs(){ wx.saveImageToPhotosAlbum({ filePath: this.saveTempFilePath, success:res=>{ wx.showModal({ title:"图片保存成功!" }) } }) } 绘制出来的都没有问题,在保存到相册中也没有任何错误,就是保存的图片全都是空白的,这是什么错误
2021-05-19 - canvas保存小程序码,无法识别,普通二维码可以识别?
使用canvas画小程序码,保存图片后,在聊天框,部分机型无法识别(比如ios可以,小米不行) 如果换成普通二维码,都可以识别 代码片段 https://developers.weixin.qq.com/s/rAYwInmd7LuP
2021-10-29 - web-view 中使用canvas生成的图带有小程序码,图片长按识别不了码
web-view 中的H5 使用canvas 生成的图带有小程序码,长按生成的图片有识别的选项,然后发给好友,iOS端微信长按图片没有识别小程序码的选项,安卓可以。 H5 中的canvas 的width 和 height 属性设置为了样式中的width 和 height 的 5 倍,如果设置为设备像素比的倍数,则偶尔可以偶尔不行
2018-08-01