背景:

1.用户点击分享朋友圈,将二维码与一张背景图合成一张图片,然后将其显示。

2.用户点击保存图片将图片保存到手机相册里面。

问题:

用户点击分享盆友圈合成后的图片显示空白。控制台可以打印出来链接。

实现:

合成图片利用wx小程序api    结合canvas一起使用。这里就不多说了,直接看  官方文档 。

主要原因就是上下文this导致的图片显示空白

  wx.canvasToTempFilePath({canvasId: 'canvas',success: (res) => {console.log('获取二维码地址'+ res.tempFilePath)const wxGetImageInfo = promisify(wx.getImageInfo)Promise.all([wxGetImageInfo({src: that.data.imgsrc}),wxGetImageInfo({// src: res.tempFilePathsrc: app.globalData.qrcode_url})]).then(res => {const ctx = wx.createCanvasContext('shareCanvas', that)ctx.drawImage(res[0].path, 0, 0, width, height)const qrImgSize = 80ctx.drawImage(res[1].path, width / 2 - 37, height - 116, qrImgSize, qrImgSize)ctx.stroke()ctx.draw()})},complete: (res) => {console.log('complete==', res)}}, that)

canvasToTempFilePath({}, this)与createCanvasContext('', this)方法里面都要传this。问题就解决了

微信小程序canvas合成图片(海报),生成的图片展示不出来,或者空白。相关推荐

  1. 微信小程序 canvas 合成海报

    1.先百度了解canvas相关文档: 2.了解微信小程序授权登录与授权登录下保存图片权限问题: 3.canvas标签属性不能是display:none: <canvas class=" ...

  2. 【修复日常bug】微信小程序canvas画商品海报出现个别用户无法生成的情况

    微信小程序,在使用canvas画海报的时候,会导致个别用户无法生成的情况,你们可以尝试把绘画某些块的代码注释掉再进行扫码调试,我前几天就遇到个别客户无法生成商品海报的情况,刚开始是以为上一个同事留的坑 ...

  3. 微信小程序 canvas画布 渲染云存储的图片

    [已解决]问题: 在云开发小程序过程种,用canvas画布 渲染云存储的图片,发现不能显示.用http带头的网络图片是可以显示的,用cloud带头的云存储图片就是不行.http带头的网络图片可以展示, ...

  4. 微信小程序canvas商品分享海报

    先上效果图 1.wxml <button class="footer-item" bindtap="creatShareImageTap">分享&l ...

  5. 微信小程序Canvas绘制图案(生成海报、朋友圈海报)

    现在小程序生成海报是很常见的,例如生成打卡海报.生成文案.生成宣传图.生成推广图等,都是少不了一个技术,就是图片绘制,有些是通过前端Canvas绘制,有些是通过后端绘制,当然前端Canvas绘制是比较 ...

  6. 微信小程序 canvas type = 2d 绘制海报心得(包括怎么绘制图片和圆角图片和圆角矩形等)

    微信小程序 canvas type=2d 使用心得 为了方便这里我封装成了一个component 然后说说怎么使用最新的方法(使用方法类似于html中的canvas可以进行参考)获取--canvas ...

  7. mpvue 微信小程序canvas生成海报

    mpvue 微信小程序canvas生成海报 效果 贴代码 html <template><!--index.wxml--><view class="poster ...

  8. 微信小程序webview页面使用painter生成海报

    微信小程序webview页面使用painter生成海报 因为要在webview下生成海报,需要使用cover-view,根据接口返回数据动态更新海报内容,微信小程序生成海报组件有wxa-plugin- ...

  9. 微信小程序 canvas描绘文字图片 生成图片并保存到本地

    在实现这个功能时,遇到以下的问题: 1. canvas绘制文字的换行问题: 如果文字的长度大于你所定的宽度的话,文字会超出你所定宽度: 小程序的CanvasContext.fillText有一个max ...

最新文章

  1. 导入数据库怎么导入_导入必要的库
  2. java 内存管理_高性能Java代码之内存管理
  3. 最全 Python 算法实现资源汇总!
  4. 多个ajax执行混乱问题
  5. ubuntu18.04安装mysql8.0中遇到的问题及解决方法
  6. Linux——tmux和vim常用命令总结(必会)
  7. 计算机联锁 2x2,二乘二取二计算机联锁系统.pdf
  8. matlab 作图设置线宽,改matlab的绘图大小、字号、线宽
  9. 阿里云、腾讯云服务器对比,那个更好?
  10. 史上最全公开课纪录片下载地址汇总
  11. 【pytorch】tnn
  12. mysql 执行错误1395_主义 - 常规错误:1395无法删除连接视图
  13. 医院网站改版注意事项和技巧
  14. 精读Translating and Segmenting Multimodal Medical Volumes with Cycle- andShape-Consistency Generative
  15. 微信小程序中配置云开发
  16. 机器如何识别花的种类
  17. 转载   banq---阎宏之间的恩怨
  18. 使用Autodock Vina进行分子对接
  19. 使用Vitamio库打造万能播放器(一)
  20. html css年会照片抽奖,利用css实现一个抽奖动画效果

热门文章

  1. 回首跌撞中前行,痛并快乐的2011
  2. 《模拟人生2》 (The Sims 2)入门经典教程攻略
  3. 2011年参加工作,30岁+,一线研发的毕业寄语
  4. vue 中 [__ob__: Observer]问题
  5. golang 时间戳与日期转换
  6. 义教志愿服务系统c语言,[志愿服务]以己为师 东科学子义教传爱心
  7. 【arduino之RGB灯模块】RGB化身彩虹灯?一块钱包邮能玩一天!
  8. 尝鲜使用hpm-cli编译鸿蒙Harmonyos组件
  9. python骂人代码大全_求助:没看懂其中一段代码的意思
  10. 如何在MySQL中导入SQL文件