• 首页 首页 icon
  • 工具库 工具库 icon
    • IP查询 IP查询 icon
  • 内容库 内容库 icon
    • 快讯库 快讯库 icon
    • 精品库 精品库 icon
    • 问答库 问答库 icon
  • 更多 更多 icon
    • 服务条款 服务条款 icon

Canvas - 绘制图片模糊问题canvas 生成图片模糊

武飞扬头像
满脑子技术的前端工程师
帮助1

Canvas绘制模糊



零、问题背景与解决思路

背景:在浏览器中下载图片的时候,会遇到图片被自动打开的场景。

思路: 1.我想通过图片url的方式,先注册一个Image去接受图片。2.然后通过canvas去绘制出来图片。 3.再重新下载图片的方式去实现。

***然后就遇到了使用canvas渲染的图片有一个模糊的问题***

一、涉及到的Api

1.关于window.devicePixelRatio

canvas出现模糊的原因

Window 接口的 devicePixelRatio 返回当前显示设备的物理像素分辨率与CSS 像素分辨率之
这个比例值也可以解释为像素大小的比率:一个 CSS 像素的大小与一个物理像素的大小。

简单来说,它告诉浏览器应使用多少屏幕实际像素来绘制单个 CSS 像素

当处理标准显示器HiDPIRetina 显示器之间的差异时,这很有用,后者使用更多的屏幕像素绘制相同的对象,从而获得更清晰的图像。

我在mac上这个值是:2在我自己的电脑上这个值是:1.25

`

第一块屏幕测试 window.devicePixelRatio 的值(微软系统)

学新通

第二块屏幕测试 window.devicePixelRatio 的值(mac系统)

学新通

2.关于Window.matchMedia()

使用window.matchMedia() 检查devicePixelRatio的值是否发生更改(例如,如果用户将窗口拖动到带有 不同的像素密度)。详细请看下面链接
MDN解释

这篇好文章是转载于:学新通技术网

  • 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
  • 本站站名: 学新通技术网
  • 本文地址: /boutique/detail/tanhgfahcc
系列文章
更多 icon
同类精品
更多 icon
继续加载