学无先后,达者为师

网站首页 编程语言 正文

设备像素比devicePixelRatio

作者:zxuanxuanz 更新时间: 2022-05-10 编程语言

一、概述

window接口的devicePixelRatio返回当前显示设备的物理像素分辨率与CSS像素分辨率之比。 此值也可以解释为像素大小的比率:一个CSS像素的大小与一个物理像素的大小。 简单来说,它告诉浏览器应使用多少屏幕实际像素来绘制单个CSS像素。

二、值

一个双精度浮点值,指示显示器的物理像素分辨率与CSS像素分辨率之比。 值1表示经典96 DPI(在某些平台上为76 DPI)显示,而对于HiDPI / Retina显示屏则期望值为2。 在异常低分辨率的显示器中,或更常见的是,当屏幕的像素深度比简单地将96或76 DPI的标准分辨率提高一倍时,可能还会返回其他值。

三、监视屏幕分辨率或缩放级别的更改

let pixelRatioBox = document.querySelector(".pixel-ratio");
let mqString = `(resolution: ${window.devicePixelRatio}dppx)`;

const updatePixelRatio = () => {
  let pr = window.devicePixelRatio;
  let prString = (pr * 100).toFixed(0);
  pixelRatioBox.innerText = `${prString}% (${pr.toFixed(2)})`;
}

updatePixelRatio();

matchMedia(mqString).addListener(updatePixelRatio);

四、参考

https://developer.mozilla.org/zh-CN/docs/Web/API/Window/devicePixelRatio

https://www.zhangxinxu.com/wordpress/2012/08/window-devicepixelratio/

原文链接:https://blog.csdn.net/qq_40542728/article/details/120705599

栏目分类
最近更新