收藏
回答

canvas2d经多层组件嵌套后,用canvasToTempFilePath输出的图片可能不完整

框架类型 问题类型 API/组件名称 终端类型 微信版本 基础库版本
小程序 Bug wx.canvasToTempFilePath, canvas2d 微信iOS客户端 7.0.18 2.14.0

在iOS上,将canvas2d经多重组件封装后,第一次调用wx.canvasToTempFilePath输出的图片不完整 -- 安卓无此问题。

在代码片段中,操作路径:“首页 - 点击进入海报绘制页面” -> “海报绘制页 - 点我绘制海报 - 生成分享图”,在进入“海报绘制页”后,第一次“生成分享图”有很大概率生成的图片不完整(可能是wx.canvasToTempFilePath导出的问题),只要还停留在“海报绘制页”,第二、第三、第N次“生成分享图”全都是正常的。

如果一次没有复现,可以重新打开小程序再试。

代码片段应该生成的正常海报:

生成的问题海报:




回答关注问题邀请回答
收藏

1 个回答

  • 林huaqi
    林huaqi
    2020-12-15

    楼主解决了吗?

    我这也出现了,看canvas已经完整画好了,导出上传就是截取的。

    也是ios第一次这样,后面都正常,android正常。

    2020-12-15
    有用
    回复 6
    • Why not?
      Why not?
      2020-12-15
      官方说已反馈了,在我另一个帖子里回复的,既然是微信的问题,也能凑合用,我就没去解决。https://developers.weixin.qq.com/community/develop/doc/0000246ecf48807c684bd08495b800
      2020-12-15
      回复
    • Why not?
      Why not?
      2020-12-15
      更准确点说,我本来开始尝试解决的,结果iOS搞好了,安卓又不行了,就没再研究下去了,非要解决的话办法还是有的,区分下系统就行了,参考我那个帖子对问题的分析。
      2020-12-15
      回复
    • 林huaqi
      林huaqi
      2020-12-15回复Why not?
      好的,我试试。
      感谢!
      2020-12-15
      回复
    • 林huaqi
      林huaqi
      2020-12-15回复Why not?
      按你说的canvas的style给默认高宽,ios可以了,试着android也正常。 👍 👍 👍
      2020-12-15
      回复
    • Why not?
      Why not?
      2020-12-16回复林huaqi
      不知道你是不是区分了系统,我试了安卓还是有问题的
      2020-12-16
      回复
    查看更多(1)
登录 后发表内容
问题标签