微信小程序canvas画布不清晰解决方法

绘制的图片,文字等十分模糊

添加以下代码,通过设置分辨率来解决

typescript 复制代码
	const dpr = wx.getSystemInfoSync().pixelRatio
	canvas.width = res[0].width * dpr
	canvas.height = res[0].height * dpr
	ctx.scale(dpr, dpr)

完整代码:

xml 复制代码
<!-- canvas.wxml -->
<canvas type="2d" id="myCanvas"></canvas>
typescript 复制代码
// canvas.js
Page({
  onReady() {
    const query = wx.createSelectorQuery()
    query.select('#myCanvas')
      .fields({ node: true, size: true })
      .exec((res) => {
        const canvas = res[0].node
        const ctx = canvas.getContext('2d')
		//添加这些代码,通过分辨率重新设置
        const dpr = wx.getSystemInfoSync().pixelRatio
        canvas.width = res[0].width * dpr
        canvas.height = res[0].height * dpr
        ctx.scale(dpr, dpr)

        ctx.fillRect(0, 0, 100, 100)
      })
  }
})

按照以上方法即可实现

相关推荐
chaosama1 小时前
微信小程序带参分享、链接功能
微信小程序·小程序
胡西风_foxww1 小时前
微信小程序动态组件加载的应用场景与实现方式
微信小程序·应用·加载·动态组件
ALLSectorSorft4 小时前
上门服务小程序会员系统框架设计
小程序·apache
甜甜的资料库6 小时前
基于小程序老人监护管理系统源码数据库文档
微信小程序
说私域11 小时前
基于定制开发开源AI智能名片S2B2C商城小程序的首屏组件优化策略研究
人工智能·小程序·开源·零售
Uyker1 天前
微信小程序动态效果实战指南:从悬浮云朵到丝滑列表加载
前端·微信小程序·小程序
happyCoder1 天前
uniapp 微信小程序实现定时消息订阅提醒(前后端)
微信小程序
Uyker1 天前
从零开始制作小程序简单概述
前端·微信小程序·小程序
打小就很皮...2 天前
HBuilder 发行Android(apk包)全流程指南
前端·javascript·微信小程序
说私域2 天前
定制开发开源AI智能名片驱动下的海报工厂S2B2C商城小程序运营策略——基于社群口碑传播与子市场细分的实证研究
人工智能·小程序·开源·零售