收藏
回答

drawImage()有Bug,希望官方修复一下!

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


通过wx.chooseImage()选择图片,然后drawImage()到canvas上,如果使用drawImage(sx, sy, sWidth, sHeight, dx, dy, dWidth, dHeight),就会遇到当照片大于2M(具体数值多少未具体测试)时,只能画一部分在canvas上,其他地方都是黑色。如果换成drawImage(dx, dy, dWidth, dHeight)就没有问题,但是这个方法又满足不了需求。希望官方能够修复一下,谢谢!


最后一次编辑于  2018-10-28  (未经腾讯允许,不得转载)
邀请回答
复制链接收藏投诉关注问题回答

5 个回答

  • ChaplinDong
    ChaplinDong
    2018-10-28

    对了,这个问题只有在安卓真机上才会出现

    2018-10-28
    赞同
    回复
  • nickname
    nickname
    2018-10-29

    请提供一下出现问题的机型和微信版本,以及能复现问题的简单代码片段(https://developers.weixin.qq.com/miniprogram/dev/devtools/minicode.html)

    2018-10-29
    赞同
    回复
  • 文队
    文队
    2018-11-14

    我也碰到这个问题了,虽然说官方说明了canvas尺寸不能过大,但是把大尺寸图片drawImage()到小尺寸的canvas总可以吧?但drawImage()的话,如果源图像过大就会部分无法绘制出来,似乎是无法超过2000px左右。现在手机摄像头随便都是4000px了,但是楼主你给了我一个解决方案,就是先按原比例缩小到2000px以内,然后再进行裁剪。

    2018-11-14
    赞同
    回复
  • fisher
    fisher
    2018-12-28

    亲自测过,大于2M的图片在android上会绘制不全,iphone上完全没问题,小于2M的图片android和iphone都没问题。 这个官方的同学很容易能复现吧,拿一张大于2M的大图缩放绘制到canvas的一个小区域中就能复现。@nickname

    2018-12-28
    赞同
    回复
  • 奇诺
    奇诺
    03-19

    同样遇到

    03-19
    赞同
    回复