- [提交bug canvas]设置setLineWidth失效
公司名称 传神(深圳)科技有限公司MP帐号(邮箱) 494753013@qq.com开发者微信号 yang_chenhao机型(如iPhone 6s plus)iphone7 操作系统(如iOS 9.3)IOS 10.3.2 是否必现 是出现时间 编译完成操作路径(即如何操作可以复现该问题) 无需操作问题描述(具体问题介绍) 业务需要在canvas中画不同粗细的线条,调用setLineWidth这个接口改变线条直径,同时给线条加上一个渐变颜色时,线条粗度变回默认粗度设置setLineWidth失效。 小程序电脑调试工具上预览也没问题,使用安卓手机调试同样没问题,上传到iphone7 如上版本时上预览则出现描述问题。问题截图(客户端问题界面截图) [图片]代码片段截图 [图片]
2017-06-28 - canvas中ctx.setLineWidth()这个方法真机失效
业务需要在canvas中画不同粗细的线条,多次调用setLineWidth这个接口改变线条直径,第一次之后设置全部无效,颜色等其他参数则没问题。 小程序电脑调试工具上预览也没问题,上传到iphone7 最新ios最新微信上预览则出现问题。 [代码]var[代码] [代码]context = wx.createCanvasContext([代码][代码]'ringBar'[代码][代码])[代码][代码]// 底部填充环[代码] [代码] [代码] [代码]context.setLineWidth(8)[代码] [代码] [代码] [代码]context.arc(150, 79, 70, 0.2*Math.PI, 0.8*Math.PI, [代码][代码]true[代码][代码])[代码][代码]context.setStrokeStyle([代码][代码]"#E87500"[代码][代码])[代码][代码]context.setLineCap([代码][代码]'round'[代码][代码])[代码][代码]context.stroke()[代码] [代码]// 进度环[代码][代码]var[代码] [代码]startAng = -1.2*Math.PI[代码][代码]var[代码] [代码]allAng = 0.2*Math.PI[代码][代码]var[代码] [代码]curEndAng = ([代码][代码]this[代码][代码].data.curQuitDay/[代码][代码]this[代码][代码].data.totalQuitDay)*1.4*Math.PI-1.2*Math.PI[代码] [代码]if[代码] [代码]([代码][代码]this[代码][代码].data.curAng < curEndAng) {[代码][代码] [代码][代码]this[代码][代码].setData({[代码][代码] [代码][代码]curAng: [代码][代码]this[代码][代码].data.curAng + Math.PI * 0.01[代码][代码] [代码][代码]})[代码][代码]} [代码][代码]else[代码] [代码]{[代码][代码] [代码][代码]clearInterval([代码][代码]this[代码][代码].barInterval)[代码][代码]}[代码][代码]context.beginPath()[代码][代码]context.arc(150, 79, 70, [代码][代码]this[代码][代码].data.curAng, 0.8*Math.PI, [代码][代码]true[代码][代码])[代码][代码]var[代码] [代码]grd = context.createLinearGradient(80, 70, 220, 70)[代码][代码]grd.addColorStop(0, [代码][代码]'#C986FF'[代码][代码])[代码][代码]grd.addColorStop(1, [代码][代码]"#A0FBFF"[代码][代码])[代码][代码]context.setStrokeStyle(grd)[代码] [代码] [代码] [代码]context.setLineWidth(8)[代码] [代码] [代码] [代码]context.stroke()[代码]
2017-06-27