收藏
回答

drawImage Api的文档错误和在部分苹果手机上的异常表现

框架类型 问题类型 API/组件名称 终端类型 微信版本 基础库版本
小程序 Bug drawImage 客户端 6.7 2.3

开发文档的开头是方法定义是这样的


CanvasContext.drawImage(string imageResource, number dx, number dy, number dWidth, number dHeight, number sx, number sy, number sWidth, number sHeight)


到后面:


示例代码

有三个版本的写法:

  • drawImage(dx, dy)

  • drawImage(dx, dy, dWidth, dHeight)

  • drawImage(sx, sy, sWidth, sHeight, dx, dy, dWidth, dHeight) 从 1.9.0 起支持

两个地方 对应不起来啊,d代表目标 ,s代表源图像吧, 上面都写反了。而且第一个参数 后面没有了。这个大多数开发者能理解。


现在头疼的是部分苹果手机的drawImage(sx, sy, sWidth, sHeight, dx, dy, dWidth, dHeight) 这个api绘图异常:


具体问题是 :

dx,dx参数 没有效果 ,无论怎么传参,都是从0,0开始

另外就是 dWidth和dHeight参数无效,无论怎么传参都是图像原来的尺寸。


发现异常的iphone6s 手机型号如下:


显示正常的手机的型号如下:



微信版本不一样,我还没试,如果版本更新了,还不行,我就跪了...

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

1 个回答

  • Rui.L
    Rui.L
    2018-09-30

    我以前遇到过这个问题,最终结果是放弃canvas,改用服务器生成图片方案。而且,安卓和苹果的bug方式是不同的,很有意思,唯一的相同点,就是和模拟器表现都不一致。

    2018-09-30
    有用
    回复 1
    • 巴斯光年
      巴斯光年
      2018-09-30

      我找到原因了,有的用户微信版本太低了

      2018-09-30
      回复
登录 后发表内容