码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 轻松解决Canvas绘制图片模糊的问题


    Canvas绘制模糊


    文章目录

    • Canvas绘制模糊
    • 零、问题背景与解决思路
    • 一、涉及到的Api
      • 1.关于window.devicePixelRatio
        • canvas出现模糊的原因
        • 第一块屏幕测试 window.devicePixelRatio 的值(微软系统)
        • 第二块屏幕测试 window.devicePixelRatio 的值(mac系统)
      • 2.关于Window.matchMedia()
    • 二、解决方法(canvas绘制图片模糊)
      • 1.图片代码如下(记得查看注释)
      • 2.canvas效果图(图片处理前):
      • 3.canvas效果图,与原来的画质没区别(图片处理后):
      • 4.canvas清晰度处理代码如下(文字,绘制图形)
        • HTML代码如下:
        • Js代码如下
    • 总结(下载canvas图片)
        • 1.如何下载canvas图片(如下👇👇)
      • 希望大家可以一键三连,作为对我的一种鼓励,继续免费跟大家贡献知识点!!!!!!!!!!!!!!!!!!!!


    零、问题背景与解决思路

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

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

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

    提示:以下是本篇文章正文内容,下面案例可供参考

    一、涉及到的Api

    1.关于window.devicePixelRatio

    canvas出现模糊的原因

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

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

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

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

    `

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

    在这里插入图片描述

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

    在这里插入图片描述

    2.关于Window.matchMedia()

    使用window.match

  • 相关阅读:
    python运行hhblits二进制命令的包装器类
    离线量化(后量化)算法研究-----脉络梳理
    Educational Codeforces Round 129 F. Unique Occurrences(树上问题)
    多端统一开发框架Taro、UniApp和WeApp这三个应用各自在前端开发领域有着独特的定位和功能
    高新技术企业认定的重要指标
    01、Python 安装 ,Pycharm 安装
    P2P去中心化网络的重点组件
    数字孪生助力轨道交通安保可视化应用
    常用的shell命令
    Spring整合第三方框架-MyBatis整合Spring实现
  • 原文地址:https://blog.csdn.net/weixin_46022934/article/details/127433064
  • 最新文章
  • 沪漂五周年了:我越来越迷茫了
    Agentic Skill Routing 实战:别再把所有 Skill 塞进 AI Agent 上下文
    MySQL-Seconds_behind_master的精度误差
    [MAF预定义ChatClient中间件-03]CachingChatClient——利用缓存省钱省时间
    AI的至暗历史:从万众期待到被政府撤资,AI的两次死亡徘徊
    Agent OS :五种驯服不确定性的范式
    PortSwigger SQL注入LAB11
    数据库即时编译JIT
    [Begin]AI Learn Data Day 0
    深度学习进阶(二十七)现代 LLM 的核心架构设计其二:SwiGLU
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
小工具 小游戏
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1

京公网安备 11010502049817号