收藏
回答

canvas绘制drawImage图片只能画一部分

框架类型 问题类型 API/组件名称 终端类型 微信版本 基础库版本
小程序 需求 drawImage(sx, sy, sWidth, sHeight, dx, dy, dWidth, dHeight) 客户端 6.7.3 2.3.0

- 需求的场景描述(希望解决的问题)

需求是将多张图片绘制到canvas上,最后画上一张大尺寸的png图片(2000px左右),让先绘制的图片从png图片镂空处显示,达到组合相册的效果。但是在绘制图片的时候,真机上总是出现图片只能绘制一部分的问题,编辑器上能全绘制出来。希望有人能帮我解决一下这个问题,谢谢!

- 希望提供的能力

希望能够将png图片完整的画到canvas上,而不是只画出来一部分,谢谢!

1,正常绘制是这样:



实际绘制出来是这样:



2、正常绘制是这样:



实际绘制是这样:


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

3 个回答

  • 禾店科技
    禾店科技
    2021-05-12

    这是尺寸的问题吗

    2021-05-12
    有用 1
    回复
  • 橘子小姐的胖橘子
    橘子小姐的胖橘子
    2018-12-01

    你好,请问解决了没?我这是在某个手机上出现的这个问题,图片只绘制一部分。

    2018-12-01
    有用
    回复
  • 卢霄霄
    卢霄霄
    2018-10-13

    应该是你存图片的地方不对

    ctx.draw(false,()=>{

        wx.canvasToTempFilePath

    })

    2018-10-13
    有用
    回复 5
    • 叶不问
      叶不问
      2018-10-14

      我换成另一个drawImage(dx, dy, dWidth, dHeight),就可以了!

      2018-10-14
      回复
    • 叶不问
      叶不问
      2018-10-14

      可能是参数多的那个有问题

      2018-10-14
      回复
    • 卢霄霄
      卢霄霄
      2018-10-14回复叶不问

      哦哦?如果还出现问题的话,回来提供个代码片段吧~

      2018-10-14
      回复
    • 叶不问
      叶不问
      2018-10-28回复卢霄霄

      但是这个drawImage(dx, dy, dWidth, dHeight)满足不了需求,怎么办呢,要不让修改一下drawImage(sx, sy, sWidth, sHeight, dx, dy, dWidth, dHeight)的bug?

      2018-10-28
      回复
    • 卢霄霄
      卢霄霄
      2018-10-31回复叶不问

      解决了吗?还有问题的话,建议另发一贴,然后提供个代码片段

      2018-10-31
      回复
登录 后发表内容