pt, px, DPI: 关于长度单位的误解

      在印刷排版中,“point”是一个绝对的单位,它即是 1/72 英寸,可以用尺子丈量的,物理的英寸。但在 CSS 中 pt 的含义却非如此,例如我们指定一个字体是 9pt,我们会以为依照 CSS 规范,它即是:

  9 * 1/72 = 1/8 inch

  这是一个误解,由于我们的显露器被分割为了一个个的像素,单个像素只能有一种色彩 (为了简化,这里暂不商讨次像素反锯齿技术),要在屏幕上显露,必须先把以 pt 为单位的长度转换为以像素为单位的长度,这个转换的媒介,就是 DPI (事实上,这里的所谓的 DPI,是操纵系统和浏览器中使用的术语,即为 PPI, pixels per inch,和扫描仪、打印机、数码相机中的 DPI 是不同的概念)。

  例如,无论在哪个操纵系统中,Firefox 浏览器默认的 DPI 都是 96,那么实际上 9pt = 9 * 1/72 * 96 = 12px。

  所以,固然“DPI”中的“I”和“1pt 即是 1/72 inch”中的“inch”,都不代表物理上的英寸,但这两个单位互相中间是相等的,也就在相乘中约掉了。

  那么,真实的物理长度怎么计算呢?请拿出一把尺子,丈量你的显露器的可见宽度 (我这里是 11.2992 英寸),除以横向辨别率 (我这里是 1024 像素),得到的就是每个像素的物理长度。

  现在我们可以答复这样一个题目,网页上 9pt 的字体究竟占用了多宽的空间?答案是:

  9 * 1/72 * 96 * 11.2992 / 1024 = 0.1324 英寸 = 0.3363 厘米。

  有兴趣的朋友可以自己查证一下。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值