gpt4 book ai didi

browser - 如何找出网页浏览者每英寸的像素数?

转载 作者:行者123 更新时间:2023-12-02 16:06:33 34 4
gpt4 key购买 nike

任何人都可以想出一种方法来发现用户的每英寸像素数吗?我想确保图像在网络浏览器中显示完全我需要的尺寸,因此使用分辨率(我可以从用户代理获得)和每英寸像素的组合我可以做到这个。

但是,我不确定是否有任何方法可以发现用户的每英寸像素数,最好使用 JavaScript 或其他非侵入性方法。

有什么建议吗?

谢谢

CJ

最佳答案

您可以使用以下 JavaScript 函数来获取 DPI。

<script type="text/javascript">
var dpi = {
v: 0,
get: function (noCache) {
if (noCache || dpi.v == 0) {
e = document.body.appendChild(document.createElement('DIV'));
e.style.width = '1in';
e.style.padding = '0';
dpi.v = e.offsetWidth;
e.parentNode.removeChild(e);
}
return dpi.v;
}
}

alert(dpi.get(true)); // recalculate
alert(dpi.get(false)); // use cached value
</script>

但是,我认为在 Windows 计算机上它始终会返回 96

据我所知,操作系统无法确定视口(viewport)的实际物理尺寸。因此,软件实际上很可能不可能知道现实生活中的 DPI。

但是,专业人士在某些部门会确保屏幕上的 DPI 与现实生活中的 DPI 相匹配。在这种情况下,上面的 JavaScript 可能就足够了。

注意:
在 WinXP 和 Win2k 上的 Opera 9、IE6 & 7 和 Firefox 3.6 中测试了上述代码。

更新:
添加了 noCache 参数。但我怀疑它会有任何效果。我在上述 Windows 版本上使用 FireFox 和 Opera 的缩放功能对其进行了测试,无论缩放量是多少,它们都将 DPI 引用为“96”。看看移动设备对此有何看法将会很有趣。

关于browser - 如何找出网页浏览者每英寸的像素数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2252030/

34 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com