第三代iPad发布会上,苹果给出了Retina设计标准的公式:

a = 2arctan(h/2d)

其中: a代表人眼视角,h代表像素间距,d代表肉眼与屏幕的距离。符合以上条件的屏幕可以使肉眼看不见单个物理像素点。这样的IPS屏幕就可被苹果称作“Retina显示屏”。

将通常使用距离代入上公式可知:

  • 移动电话显示器的像素密度达到或高于300ppi就不会再出现颗粒感;

  • 手持平板类电器显示器的像素密度达到或高于260ppi就不会再出现颗粒感;

  • 而苹果电脑的Retina显示器像素密度只要超过200ppi就无法区分出单独的像素。

String.prototype.format = function() {var formatted = this;for (var i = 0; i < arguments.length; i++) {var regexp = new RegExp('\\{' + i + '\\}', 'gi');formatted = formatted.replace(regexp, arguments[i]);}return formatted;
};var Computer = {createNew: function(name, width, height, inch){var computer = {};computer.name = name;computer.width = width;computer.height = height;computer.inch = inch;computer.getPPI = function(){ return parseInt(Math.sqrt(Math.pow(this.width, 2) + Math.pow(this.height, 2)) / inch)};computer.isRetina = function(){ return this.getPPI() >= 200;};computer.displayPPI = function(){ document.writeln("{0} -> 分辨率:{1} * {2};尺寸:{3};PPI:{4}{5};<br />".format(this.name, this.width, this.height, this.inch, this.getPPI(), this.isRetina() ? "(Retina)" : ""));};return computer;}};Computer.createNew("ThinkPad S3 14", 1440, 900, 14).displayPPI();
Computer.createNew("ThinkPad T48 14 FHD", 1920, 1080, 14).displayPPI();
Computer.createNew("ThinkPad T48 14 WQHD", 2560, 1440, 14).displayPPI();
Computer.createNew("MacBookPro 15.4", 2880, 1880, 15.4).displayPPI();

计算结果:

ThinkPad S3 14 -> 分辨率:1440 * 900;尺寸:14;PPI:121;
ThinkPad T48 14 FHD -> 分辨率:1920 * 1080;尺寸:14;PPI:157;
ThinkPad T48 14 WQHD -> 分辨率:2560 * 1440;尺寸:14;PPI:209(Retina);
MacBookPro 15.4 -> 分辨率:2880 * 1880;尺寸:15.4;PPI:223(Retina);

计算笔记本电脑PPI的JavaScript小工具相关推荐

  1. 显示电池电量的小工具

    最近没事,写了一个可以显示笔记本电池电量的工具,是一个dll,效果如下,使用注册dll的工具注册一下,就可以使用了 regsvr32.exe Deskview.dll 如果要删除这个组件,使用命令 r ...

  2. 一个计算crc校验的小工具的编写。

    计算LPC校验 计算CRC8校验 计算CRC16校验 计算多种校验(没有分离单个界面显示) 可以作为平时使用的一个小工具 下载链接:https://download.csdn.net/download ...

  3. ADI射频电路计算小工具ADIsimRF介绍

    做射频收发组件的同志都知道,设计一个模块的工作量之大,而且各种计算相当繁琐,每一个链路当中有各种指标需要设计阶段即满足指标而且留有余量.这就要求设计人员有相当的水平和资历了,所以很多大的项目都是些资深 ...

  4. Java实现动态加载页面_[Java教程]动态加载页面数据的小工具 javascript + jQuery (持续更新)...

    [Java教程]动态加载页面数据的小工具 javascript + jQuery (持续更新) 0 2014-05-07 18:00:06 使用该控件,可以根据url,参数,加载html记录模板(包含 ...

  5. Javascript 创建书签小工具 (bilibili视频下载为例)

    书签小工具(Bookmarklets)是一个非常棒的javascript代码小片断伪装成的小应用,它驻留在你的浏览器里并为网页提供额外的功能.这里我们将研究如何从头开始创建一个书签小工具及一些最佳实践 ...

  6. cxfreeze打包pyqt5程序_基于PyQt5的简单RMSE计算小工具研究

    最近经常做地波测试,工作流程就不啰嗦了,就是把n个测量值和理论值进行比较,计算均方根误差(RMSE) 往年都是大冷天的先用手抄下来,一抄就是几百条,然后回去又填1遍excel慢慢算,纯粹体力活 趁着周 ...

  7. 机器视觉——计算视野的小工具

    计算视野的小工具 1. 使用方法和演示 2. 相机主要参数表格 2.1 海康威视 2.2 巴斯勒 3. 资源下载 1. 使用方法和演示 目前工具支持海康威视和巴斯勒两个品牌的常用相机型号: 选择好相机 ...

  8. JavaScript小项目之BMI值计算

    项目题目: 实现BMI值计算器 项目作用: 复习JavaScript课程知识,学习DOM基础知识,熟悉document对象的使用,实现简单的BMI计算器页面. JavaScript小项目系列 前言 一 ...

  9. Python 简易版小工具 | 计算天数

    文章目录 简易版小工具 | 计算天数 需求 实现思路 代码实现 使用效果 简易版小工具 | 计算天数 需求 给定一个日期,格式如 "2020-2-12",计算出这个日期是 2020 ...

最新文章

  1. HTML初级知识点总结(2)
  2. 分布式爬虫系统设计、实现与实战:爬取京东、苏宁易购全网手机商品数据+MySQL、HBase存储...
  3. shujufenxi : shenzhenditie
  4. mysql全局变量 error_记录——node-mysql连接池遇到的全局变量问题
  5. JAVA入门级教学之(static静态代码块)
  6. Dubbo-go 优雅上下线设计与实践
  7. centos下安装pip时失败:
  8. 织梦缩略图自动补齐绝对路径_织梦生成文章内容缩略图时自动加上域名绝对路径...
  9. 在不改变链表的情况下从尾到头打印连表
  10. cpc卡内计费信息异常包括_抖音信息流广告投放收费标准是什么?抖音发一个广告多少钱?...
  11. 今年春节北京烟花爆竹备货量下降46.7%
  12. winrar命令行加压解密
  13. java 指令发送短信_Java短信发送机的实现
  14. 联想 x系列服务器停产,去年年底惠普、IBM和联想相继在服务器市场失去了份额...
  15. 学数据结构 是不是一定要先学离散数学
  16. RabbitMQ消息监听(多种模式-fanout/topic)
  17. vmware workstation 8序列号
  18. 如何限制IP访问你的网站?
  19. centos7和win7双系统安装
  20. 文件属性(三)——st_uid属性和st_gid属性

热门文章

  1. 目前最值得收藏的100个各类资源站
  2. kind:Kubernetes in Docker,单机运行 Kubernetes 群集的最佳方案?
  3. opencv 改变光标_opencv编译方法
  4. 实现计算器(C++版 )
  5. 群晖 mysql 端口配置_群晖DS218+部署mysql
  6. 华为临阵换帅,云市场掀起“三国杀”
  7. 2016计算机论文参考文献,2016大学毕业设计计算机软件论文摘要和结论参考文献俱全.doc...
  8. ant - java 构建工具
  9. 三星android one 拍照功能,三星One UI 3.1体验:更好用了,也更注重隐私了
  10. backtrack回溯算法