用javascript计算PPI
Intro
为了计算PPI,写一个js??肯定不是这样的,是写一个js循环计算多个常见尺寸的ppi,一个个手敲那不符合我的风格。。
分辨率
1k 1920X1080
2k 2560X1440
4k 3840x2160
这里需要注意的就是只谈分辨率不谈PPI大都是流氓,1080P在13寸和27寸的感受天差地别。。。因此我们需要了解PPI.
PPI || DPI
首先明确DPI和PPI的意思:
PPI(Pixels Per Inch)像素密度: 每英寸所拥有的像素数量。
DPI(Dots Per Inch) 每英寸点数):指每一英寸长度中,取样、可显示或输出点的数目。衡量打印机打印精度的主要参数之一。
更详细内容可以阅读第一话——什么是 DPI,什么又是 PPI ? PeterZ(ps,里面的ppi计算公式不认同)。
也就是说DPI衡量打印机和鼠标精度,而不是说显示器、屏幕。后者用PPI来描述。越高PPI显示越细腻越逼真越贵。。越少看到像素点带来的粗糙感、像素感。。而Apple的Retina屏幕不过是超高PPI换了个名称而已。
结论:手机一般超过 300 PPI为好, 笔记本电脑上至少需要 150 PPI 才能避免直接看到像素点,而 200 PPI 以上才能算得上优秀
计算公式
PPI = sqrt(H^2 + V^2) / Inch
案例代码
全部代码参见JsDemo - PPI
function calppi() {var width = document.getElementById("width").value;var height = document.getElementById("height").value;var inch = document.getElementById("inch").value;var ppi = Math.sqrt(Math.pow(width, 2) + Math.pow(height, 2)) / inch;document.getElementById("ppi").value = ppi;}
Demo
为了证明上面的计算公式,搬出了iphone小刚炮规格手册进行验证:可以看到计算结果表面iphone SE虚标了0.3多一丢丢。
iPhone SE 技术规格
4.7 英寸 (对角线) LCD 宽屏多点触控显示屏,采用 IPS 技术
1334 x 750 像素分辨率,326 ppi
再举个13寸笔记本2K屏
常见显示器PPI
24寸都是23.8寸五入
分辨率 | 尺寸(inch) | PPI |
---|---|---|
1k | 23.8 | 92.55 |
2K | 23.8 | 123.41 |
4K | 23.8 | 183.57 |
2K | 27 | 108.78 |
4K | 27 | 163.17 |
Refer
下面几个首先屏幕不谈DPI,其次结果不对劲。。
Javascript-从JS / CSS检测系统DPI / PPI?
dpi_x: 133.95348837209303 dpi_y: 133.95348837209303
javascript获得屏幕的DPI xqdak
arrDPI: Array [ 96, 96 ]
计算笔记本电脑PPI的JavaScript小工具 KimSoft
parseInt(Math.sqrt(Math.pow(this.width, 2) + Math.pow(this.height, 2)) / inch)
iPhone SE 技术规格
屏幕ppi计算器在线
JsDemo - PPI
第一话——什么是 DPI,什么又是 PPI ? PeterZ
用javascript计算PPI相关推荐
- html 表格自动计算,HTML表格中的JavaScript计算
我是 JavaScript的新手,所以我甚至不知道这是否是尝试这个的正确语言,但我想我会尝试.我已经阅读了其他几篇文章,我找不到真正让我知道如何做到这一点的东西,所以我在这里问.我读过的所有例子都涉及 ...
- JS、javascript计算两个时间差
其实,javascript计算时间差的方式非常简单,如果是默认的Date()类型,直接相减就是相差的毫秒数. Date型 var d1 = new Date('2016/03/28 10:17:22' ...
- javaScript 计算两个日期的天数相差~~~
一:计算两个日期相差的天数 比如: str1 = "2002-01-20" str2 = "2002-10-11" 怎样用javaScr ...
- JavaScript计算汉明距离(HammingDistance)
文章目录 前言 实现代码 总结 前言 汉明距离表示两个(相同长度)字对应位不同的数量,我们以d(x,y)表示两个字x,y之间的汉明距离.对两个字符串进行异或运算,并统计结果为1的个数,那么这个数就是汉 ...
- JavaScript 计算细节解惑
JavaScript Puzzlers! 被称为 javascript 界的专业八级测验,感兴趣的 jser 可以去试试. 我试了一下, 36 道题只做对了 19 道, 算下来正确率为 53%,还没有 ...
- JavaScript计算圆周率(解析几何+定积分)
最近数学预习到选修本的定积分,前一向用它解决了物理上的正弦交流电有效值问题,前几天突发奇想,想用它来计算圆周率.于是我花了半节物理课的时间研究了一下,得出了以下求解方法. 首先我们知道半径为r,圆心为 ...
- JavaScript 计算地下城堡2资源何时满仓
由于悲哀的发现,用Python写的代码打开不是很方便,于是又写了一个HTML页面. 用的JavaScript脚本. <!DOCTYPE html PUBLIC "-//W3C//DTD ...
- html求三角形的面积,JavaScript计算三角形面积
1.设计思路 (1)第一种是直接在JavaScript中定义 (2)第二种是利用函数 (3)第三种是利用函数,优化功能,提高可重用性 2.源码 计算三角形面积 //三角形的宽度 var width = ...
- JavaScript计算两个日期之间相差的天数
写一个JavaScript的函数用于计算两个日期字符串之间相差的天数,首先求出两个日期之间相差的毫秒数,然后除以一天的毫秒数 //获得两个日期之间相差的天数function getDays(date1 ...
最新文章
- 基于SSM实现考研信息管理平台系统
- Linux System Programming --Chapter Nine
- linux架构师高级系统调优策略
- Kafka监控架构设计
- dom4j解析xml字符串实例
- mysql mac 中文乱码_Mac mysql 解决中文乱码
- 崛起于Springboot2.X之redis集群搭建(17)
- NVisionXR_iOS教程五 —— 添加灯光渲染
- ExtJS在面向对象所作出的努力
- 信息系统项目管理--论文分析笔记
- 华为交换机常用查看命令
- win10显示rpc服务器不可用,win10系统RPC服务器不可用如何处理?
- OSS服务和自建服务器存储对比
- 博文推荐|深入解析 BookKeeper 多副本协议(一)
- [激光原理与应用-63]:激光器-光学-探测光、泵浦光和种子光三种光的区别
- 原来开车和写博客是很相似的心理变化过程
- 《鲲鹏》MV,160万开发者的集结号
- 程序员上班摸鱼时都会浏览哪些网站?年轻人耗子尾汁
- 问道手游服务器找不到,问道手游安卓苹果互通服怎么不显示 鹊桥相会不能互通解决方法...
- 广州的11个辖区_人才吸引力排名,广州11个区哪家强?