小程序
小游戏
企业微信
微信支付
扫描小程序码分享
代码片段:https://developers.weixin.qq.com/s/OK1Ml2mN7jpQ
即使是显示设置了canvas的尺寸,为什么在实际绘制的时候那个圆还是被纵向被拉伸了?要怎么样才能既自定义canvas尺寸,还能保证绘制正确呢?谢谢!
2 个回答
加粗
标红
插入代码
插入链接
插入图片
上传视频
https://developers.weixin.qq.com/s/BrjeN2mH74po ,看看这个可以吗?
你好,麻烦通过点击下方“反馈信息”按钮,提供出现问题的。
这个尺寸你得好好琢磨一下,有很多影响因素的,dpr也是对生成图片有影响的,开发时要适时通过ctx.scale缩放观察
drawInit() {
this.createSelectorQuery()
.select('#poster')
.fields({
node: true,
size: true,
})
.exec(this.canvasInit.bind(this))
},
canvasInit (res) {
// const dpr = wx.getSystemInfoSync().pixelRatio
const width = res[0].width * 2
const height = res[0].height * 2
this.canvasObj = res[0].node
const ctx = this.canvasObj.getContext('2d')
this.canvasObj.width = width
this.canvasObj.height = height
// ctx.scale(0.5, 0.5)
this.drawCanvas(width, height)
}
关注后,可在微信内接收相应的重要提醒。
请使用微信扫描二维码关注 “微信开放社区” 公众号
https://developers.weixin.qq.com/s/BrjeN2mH74po ,看看这个可以吗?
这个尺寸你得好好琢磨一下,有很多影响因素的,dpr也是对生成图片有影响的,开发时要适时通过ctx.scale缩放观察
drawInit() {
this.createSelectorQuery()
.select('#poster')
.fields({
node: true,
size: true,
})
.exec(this.canvasInit.bind(this))
},
canvasInit (res) {
// const dpr = wx.getSystemInfoSync().pixelRatio
const width = res[0].width * 2
const height = res[0].height * 2
this.canvasObj = res[0].node
const ctx = this.canvasObj.getContext('2d')
this.canvasObj.width = width
this.canvasObj.height = height
// ctx.scale(0.5, 0.5)
this.drawCanvas(width, height)
}