dpi,pt,px 的关系及换算 作者:七棵菜 日期:2022-11-30 栏目:计算机分类:90 人气:416 ### 定义 - px:pixel,即像素,电子屏幕上的最基本单元,相对长度单位,是相对于显示器屏幕分辨率而言的,如分辨率为1920*1080就是宽度方向上有1080个像素点,高度方向上有1920个像素点 - pt:point,即点,印刷行业常用单位,等于1/72英寸。 - dpi:是一个相对尺寸,即每英寸的像素点数 ### 换算关系 ### px换算dpi `dpi`就是每英寸包含的点数,很好算,根据勾股定理,如屏幕分辨率为1920*1080,可以根据勾股定理得出对角线的像素  那么再用对角线的像素乘以屏幕规格就得出`px`换算`dpi`的公式了  如,手机分辨率为1920*1080的,规格为5英寸,套入公式算得每英寸有440个像素点,即`dpi`=440 ### px和pt换算 英文字体的1磅,相当于1/72英寸,约等于1/2.8mm,12PT的字打印出来约为4.2mm。 pt和px和换算关系如下: > 1pt = (dpi/72)px 根据pt可以得到px: > px = pt * dpi / 72 ### javascript获取屏幕分辨率的方法 ``` export const getDPI = () => { var arrDPI = new Array(); var tmpNode = document.createElement("DIV"); tmpNode.style.cssText = "width:1in;height:1in;position:absolute;left:0px;top:0px;z-index:99;visibility:hidden"; // 宽高为1英寸 document.body.appendChild(tmpNode); arrDPI[0] = tmpNode.offsetWidth; arrDPI[1] = tmpNode.offsetHeight; tmpNode.parentNode?.removeChild(tmpNode); return arrDPI; } ``` ### 鸣谢 - [csdn](https://www.csdn.net/tags/MtjaQg0sMzg0NTMtYmxvZwO0O0OO0O0O.html) - [百度文库](https://wenku.baidu.com/view/5d1d30e2d4bbfd0a79563c1ec5da50e2524dd1ac.html) - [百度知道**狮子最爱冥王星**](https://zhidao.baidu.com/question/128223679.html) 标签: dpi 像素 屏幕 上一篇:如何使用mvn命令导入依赖 下一篇:vue 指令 随便看看 2022-11-30 配置apache, nginx 支持 angular2+ 等单网页项目路由刷新 2023-08-16 nginx配置angular项目部署在项目子目录 2022-11-30 设置 .gitignore 不忽略文件夹的规则 2022-11-30 git查看某文件最近的修改内容 2022-11-30 实现 git 切换分支后代码互不影响 留言