使用最新的Canvas 2d绘制直线,不同的位置,有些模糊有些清晰,如何解决?
我在使用Canvas 2d绘制直线时,不同位置的直线,有些是模糊的,有些是清晰的,请问这个问题怎么解决
在电脑的效果图如下(真机同样出现这个问题(iPhone 6s , 最新微信版本,iOS 10.3系统)):
代码如下:
<canvas type="2d" id="myCanvas" />
onReady: function () {
const query = wx.createSelectorQuery()
query.select('#myCanvas')
.fields({ node: true, size: true })
.exec((res) => {
const width = res[0].width
const height = res[0].height
const canvas = res[0].node
const ctx = canvas.getContext('2d')
const dpr = wx.getSystemInfoSync().pixelRatio
canvas.width = width * dpr
canvas.height = height * dpr
ctx.scale(dpr, dpr)
// 把路径移动到画布中的坐标(10, 10)点
ctx.moveTo(10, 10)
// 新增一个新点(100, 10),创建一条从(10, 10)到(100, 10)的线条
ctx.lineTo(100, 10)
// 路径移动到画布中的坐标(10, 5)点
ctx.moveTo(10, 70)
// 新增一个新点(100, 5), 创建一条从(10, 50)到(100, 50)的线条
ctx.lineTo(100, 70)
// 需要用stroke()方法来画线条
ctx.stroke()
})
},