Stage1st

 找回密码
 立即注册
搜索
查看: 22226|回复: 89

[硬件] 为什么电脑“字儿会那么小”?关于ppi和缩放的二三事

[复制链接]
     
发表于 2021-2-5 00:58 | 显示全部楼层 |阅读模式
本帖最后由 再买自检星剁手 于 2022-12-4 11:14 编辑

很多人在选购显示器的时候会特意拒绝高分辨率的,理由是“我不要4k,字儿会很小的”。那么这种现象究竟是为何?为什么在Windows里调整缩放就能解决?楼主今天就通过此贴说明白这问题。

首先要提到每英寸像素数(pixel per inch,后文用ppi表示)这一概念,该概念是苹果在2010年iPhone 4时,解释“视网膜屏幕(retina display)”时引入的。视网膜屏幕的优越性在于,横向和纵向分辨率都翻倍,老机器(iPhone 3gs)只能显示一个像素的区域,新机器(iPhone 4)可以塞进四个像素。单位面积的像素增加,好处就是显示文字可用的像素越多,效果越细腻。当然,硬件上直接分辨率翻倍,也解决了兼容性问题。

ppi的算法见每英寸像素 - Wikipedia,因为不是本文重点故不展开。下面给出几个常见显示器分辨率尺寸组合的ppi:

27寸4K:163.18
27寸2K:108.79
24寸1080P:91.79
14寸1366x768:111.94

有的场合会用dpi(dot per inch)来表示。由于在显示方面像素就是最小的不可再分的单位,因而在显示器上ppi和dpi的意思是一样的。另一方面,AMOLED由于材料限制,在设计时会采用多个像素共同借用同一个发光点,也就是单个像素内不是独立的RGB三种发光点,因而有人提出这类排列需要将ppi折损计算。目前的安卓旗舰机,即使按照折损后的ppi,数值也远高于电脑显示器。目前也有采用RGB排列的OLED屏幕,例如PSVita,例如LG CX系列,后者作为电视却支持gsync,宣传时也被当做游戏显示器。

扯远了,为什么要先介绍ppi呢?因为Windows在设计时,是以96ppi为标准进行设计的。不管是出于追随苹果给Mac使用视网膜屏幕,还是解决老人看屏幕字儿小的问题,Windows 7支持缩放功能,比Mac使用视网膜屏幕要更早(当时只能最高缩放到125%)。而扩展缩放功能的支持范围,自然是为了享受高ppi在文字渲染时的好处。

此时,需要引入一个(楼主自创的)新概念,叫做“操作系统的目标ppi”,这个概念和Windows中的缩放有关,之前提到Windows是以96ppi进行设计的。那么只要软件或者系统的设计者不是脑瘫,在显示器96ppi下是不会出现UI和文字过大和过小的问题的。

操作系统的目标ppi=96乘以缩放百分比。

假如按照之前的习惯,买24寸1080P显示器,不知道Windows还有缩放功能,Windows按照默认的100%缩放百分比,那么

操作系统目标ppi = 96 * 100% = 96

那么Windows的缩放功能,自然是改变了UI和文字的分辨率(注意,这里不是指大小改变),假设原来一个汉字需要12x12的分辨率进行显示,进行150%缩放,使用的分辨率就变成了18*18,若是200%缩放,使用的分辨率就变成了24*24,众所周知,分辨率越高,显示效果越清晰。例如下图。

Resolution_illustration.png
图源:分辨率 - **,自由的百科全书 (wikipedia.org)

进行缩放后,进行UI和文字显示的分辨率得到了提升,如果显示器还是原来的那个,你就会发现UI和文字“变大了”。因此需要引入“操作系统的目标ppi”,因为缩放后该值确实发生了改变。

假如把缩放开到150%,那么操作系统目标ppi = 96 * 150% = 144
假如把缩放开到200%,那么操作系统目标ppi = 96 * 200% = 192

到这里,我们可以得出:进行缩放,操作系统的目标ppi就产生了变化。

那为什么从24寸1080P显示器,换到27寸4K显示器,字儿就变得特别小呢?别急,马上就知道了。

假设我之前用着24寸1080P显示器好好的,潭友送了我一个27寸4K显示器,我没有变动主机只是把DP线插到新显示器上,此时缩放功能并没有开启,还是100%,那么此时我们“操作系统的目标ppi”是多少?96对吧,但显示器的物理ppi是多少?163.18,而96和163.18是不是差了很多呢?这就是你一换显示器就发现UI和文字特别大或者特别小的原因所在。

为了衡量“操作系统认为的UI大小”和“显示器显示出UI的实际大小”的差距,需要引入第二个自创的概念,我们先把它记作R

R= 操作系统的目标ppi / 显示器的物理ppi

R表示在一定的缩放下,UI文字实际显示的大小和其设计目的大小的比值。

R会有3个结果,大于1,小于1,等于1;等于1说明显示器可以完美地展现UI和文字的设计大小,但没有显示器厂商做这种屏幕,只存在梦里;

R大于1,说明UI和文字实际显示的大小相比设计大小偏大;R小于1,说明UI文字的实际显示大小相比设计大小偏小。R越接近1,实际显示大小和设计大小越接近。

为什么27寸4K显示器“字儿会那么小”?因为当不缩放时,R = (96 * 100%) / 163.18 约等于 0.588,此时的R远小于1,UI和文字的实际显示大小只有设计大小的58%,当然会很小了。

为什么把缩放改成200%字儿就恢复了呢?因为R = (96 * 200%) / 163.18 约等于 1.177,R比1略大,UI和文字的实际显示大小相当于设计大小的117%

为了让UI和文字元素看着舒服,应该尽可能调整缩放让R接近1,也有潭友觉得“小一点无所谓,显示的东西太少太没效率了”,如果你的缩放能让R在0.8左右还是合适的,个人认为R再小就不可接受了。例如在27寸4K显示器上很多人使用150%缩放,得到的R为0.88,只能说大小缩为原来的九成,换更多的元素显示还是值得的。

最后,还有一个有趣的值:

27寸2K显示器,100%缩放,R=1.13
27寸4K显示器,200%缩放,R=1.17

显示元素大小居然差不太多


--------------------------------更新分割线-----------------------------------

更新一下关于视距和ppi的关系。水果在2012年发布the new ipad上引入了视网膜屏幕标准的公式,即在标准使用距离范围下,ppi只要满足一定值即可称为视网膜屏幕。

image.png

公式写出来即为a=2*arctan(h / (2*d)),其中a表示肉眼的视角,d表示肉眼到屏幕的距离,h表示像素距离(一般显示器参数上以点距表示),该公式可进行如下变换:

a / 2 = arctan(h / (2 * d))
tan(a / 2) = h / (2 * d)
h = 2 * d * tan(a / 2)

一般a取人类视角能分辨的最小值,也就是1角分(60角分==1度),再代入平时常用的d,即可算出h是多少

楼主使用显示器时,d的典型值为60厘米,则在此距离下所需的ppi可以用1英寸除以h解决。计算得出此时的最佳ppi约为145;27寸4k显示器的的163ppi能够满足需求。

  1. import numpy as np

  2. # 二分之一角分
  3. angle = np.pi / 180 / 60 / 2

  4. fixed = np.tan(angle)

  5. # 计算单位为毫米
  6. viewDistance = 60 * 10

  7. # 由苹果视网膜公式换算而来
  8. pixelDistance = 2 * viewDistance * fixed

  9. # 1英寸等于25.4毫米
  10. ppi = 25.4 / pixelDistance

  11. print(ppi)
复制代码

另外,这也能计算ppi固定时,视距在多少以上不会看到颗粒感。例如楼主想买lg c2 42当做显示器,ppi约为100,可计算得最短视距约为87.3厘米,只要观看距离超过这个值就不会看到大果粒

评分

参与人数 6战斗力 +8 收起 理由
l226wtq + 1 好评加鹅
Sza + 1 好评加鹅
wx40217 + 2
jzsgtx + 1 好评加鹅
ajsh + 1 有用
岛风酱 + 2 好评加鹅

查看全部评分

回复

使用道具 举报

     
发表于 2021-2-5 01:17 | 显示全部楼层
这时候就要说了

傻逼Mac OS……
回复

使用道具 举报

     
 楼主| 发表于 2021-2-5 01:20 | 显示全部楼层
另外win10会有一个推荐缩放值,像这样(偷PC群群友图):
QQ图片20210204234138.jpg
这是因为系统可以读取显示器的VESA EDID:
下图的右侧screen size里可以看到楼主的显示器有效面积长54cm,宽30cm,典型的24寸16:9规格。
屏幕截图 2021-02-04 232832.png
从EDID中还可以读出最佳分辨率,注意下图中的detailed timing里的timing,除了active有效像素外,还有其他的辅助像素存在。因而在计算显示器所需带宽时,要包括辅助像素在内。
屏幕截图 2021-02-04 233634.png

从显示器的EDID中,操作系统可以拿到物理尺寸,和最佳分辨率,那么计算物理ppi也就不成问题,因而可以根据你的系统给你推荐最佳缩放值。

另外,显示器型号像是员工脸滚键盘出来的(r/pcmasterrace惯例吐槽项目),主要原因我认为还是和EDID有关
屏幕截图 2021-02-04 233729.png
回复

使用道具 举报

     
发表于 2021-2-5 06:08 | 显示全部楼层
难怪 175% 比 150% 和 200% 都顺眼,用的 27 寸 4K 显示器,150% 嫌字小到笔画发虚,200% 又嫌字太大。

—— 来自 S1Fun
回复

使用道具 举报

     
发表于 2021-2-5 07:11 | 显示全部楼层
放大缩小这块,win本身可以调节,还算可以

相当多的程序可以自适应


但是好多所谓专业软件,不能自适应的,默认一出来还是100%大小,4K下那瞎眼————部分这种软件有设置可以缩放,但是效果未必好。。。
回复

使用道具 举报

头像被屏蔽
     
发表于 2021-2-5 07:26 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

     
发表于 2021-2-5 07:28 | 显示全部楼层
电脑的图形界面以 96 ppi 来设计是个老传统了。很多年以前的老显示器也会做成接近 96 ppi,比如 17 寸 1024x768,比如 24 寸 1920x1200。

现在市面上的显示器在 ppi 这个事情上就混乱了不少。

我想来想去,好像只有苹果和微软两家设计的电脑屏幕 ppi 在不同物理尺寸下仍然保持相对一致,而不忌讳出现“奇怪”的非“整数”分辨率,而这么做的代价则是需要向屏幕面板厂商专门定制。所以我觉得可以推测这些设计师考虑过屏幕的物理尺寸和分辨率匹配的用户体验问题,并一定程度上付诸了实施。

以苹果为例:
27 寸 iMac / iMac Pro 多年来一直是 5120x2880,等效 2560x1440(视网膜屏之前就是这个),109 ppi;
21.5 寸 iMac,3840x2160,等效 1920x1080,102 ppi;
15.4 寸 MacBook Pro,2880x1800,等效 1440x900,110 ppi;
13.3 寸 MacBook Pro,2560x1600,等效 1280x800,113 ppi;
16 寸 MacBook Pro,3072x1920,等效 1536x960,113 ppi;
iPhone、iPad 的屏幕 ppi 历代也都保持高度一致,这里就不具体列数据了。

不过我这个观点也被打过脸:比如 2016 年开始 MacBook Pro 默认并不是 200% 整数放大的了,因此甚至不是点对点显示……这个情况在 iMac 上并没有出现,可能是苹果觉得笔记本观看距离更近,用户可能更倾向于容忍更高的 ppi 换取显示更多内容,所以把默认的等效 ppi 调高到了接近 iPad 的水平,当然你可以自己改回去;再比如同样是 Surface 系列,Surface Pro 和 Surface Book 都是等效 130 ppi 左右,而 Surface Laptop 只有等效 100 ppi……我因此觉得 Surface Laptop 就是个低端玩意儿了。

我个人的观感来说,确实等效 ppi 在 100-130 之间是比较舒适的,Surface Pro 基本是我能接受的上限。

这里想谴责一下屏幕面板厂商拍脑袋定下的 14.1 寸 1080p/2160p、15.6 寸 1080p/2160p 等标准,导致笔记本厂家们跟着出了一堆这种屏幕的笔记本,蛋疼得要死。同时点名批评联想 ThinkPad T/X 系列和戴尔 XPS 系列,作为消费级笔记本旗舰系列,完全没有考虑屏幕分辨率和尺寸不匹配造成的用户体验问题:14 寸 1080p 默认 150% 缩放等效 1280x720 这他妈的能用?15.6 寸 3840x2160 默认 200% 缩放等效 141 ppi 这他妈的能用?13.3 寸上个 3840x2160 **认真的?

评分

参与人数 1战斗力 +1 收起 理由
starash + 1 好评加鹅

查看全部评分

回复

使用道具 举报

     
 楼主| 发表于 2021-2-5 07:59 来自手机 | 显示全部楼层
boday 发表于 2021-2-5 07:28
电脑的图形界面以 96 ppi 来设计是个老传统了。很多年以前的老显示器也会做成接近 96 ppi,比如 17 寸 1024 ...

其实15.6寸4k,300%缩放,还行

华为matebook 14和即将推出的联想小新pro16,物理ppi都在185左右,非常适合200%缩放

—— 来自 OnePlus HD1900, Android 11上的 S1Next-鹅版 v2.4.4.1
回复

使用道具 举报

     
 楼主| 发表于 2021-2-5 08:25 | 显示全部楼层
本帖最后由 再买自检星剁手 于 2021-2-5 08:26 编辑
蕺菜本菜 发表于 2021-2-5 07:26
有没有ppi300以上电脑屏幕呢?

目前见过ppi最高的量产显示器是dell up3218k,31.5寸8K分辨率,279ppi;显然开300%缩放十分合适

夏普展出过27寸8k120hz的屏幕,ppi肯定在300以上了,但没有量产
回复

使用道具 举报

发表于 2021-2-5 08:40 来自手机 | 显示全部楼层
蕺菜本菜 发表于 2021-2-5 07:26
有没有ppi300以上电脑屏幕呢?

65寸4k屏幕或者85寸4k屏幕

—— 来自 HUAWEI LIO-AN00, Android 10上的 S1Next-鹅版 v2.4.4.1
回复

使用道具 举报

     
发表于 2021-2-5 08:45 | 显示全部楼层
部分程序不做缩放适配才是最恶心的,更怪的是原先有,但是更新之后就变模糊了,简直恶心。
尤其是有些galgame,开缩放那叫一个糊。
回复

使用道具 举报

     
 楼主| 发表于 2021-2-5 09:03 | 显示全部楼层
lhw369 发表于 2021-2-5 08:40
65寸4k屏幕或者85寸4k屏幕

—— 来自 HUAWEI LIO-AN00, Android 10上的 S1Next-鹅版 v2.4.4.1 ...

同分辨率是尺寸越小ppi越高
回复

使用道具 举报

头像被屏蔽
     
发表于 2021-2-5 09:40 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

     
发表于 2021-2-5 09:43 | 显示全部楼层
17.3~27寸1080(82~130 ppi)都可以接受  再大或再小的1080p就很难受了
回复

使用道具 举报

     
发表于 2021-2-5 09:52 来自手机 | 显示全部楼层
我记得很多人都推荐缩放124%啥的 好像不是不到125%不会触发某个机制?

—— 来自 OnePlus KB2000, Android 11上的 S1Next-鹅版 v2.4.4.1
回复

使用道具 举报

     
发表于 2021-2-5 09:56 | 显示全部楼层
本帖最后由 闪电战 于 2021-2-5 09:57 编辑
wx40217 发表于 2021-2-5 09:52
我记得很多人都推荐缩放124%啥的 好像不是不到125%不会触发某个机制?

—— 来自 OnePlus KB2000, Android ...

这个问题最新版的Windows 10应该解决了
回复

使用道具 举报

     
发表于 2021-2-5 09:57 | 显示全部楼层
我是27寸2k,125%缩放
回复

使用道具 举报

     
发表于 2021-2-5 09:57 | 显示全部楼层
27寸4K,Win10推荐150%缩放感觉很舒服
15寸1080p本推荐125%缩放看着也挺不错,但还是选择100%缩放显示更多内容
估计14寸1080p本就必须125%缩放了
回复

使用道具 举报

     
发表于 2021-2-5 10:16 来自手机 | 显示全部楼层
boday 发表于 2021-2-5 07:28
电脑的图形界面以 96 ppi 来设计是个老传统了。很多年以前的老显示器也会做成接近 96 ppi,比如 17 寸 1024 ...

15寸2160p放200%还可以,等效141DPI也没大多少
回复

使用道具 举报

     
发表于 2021-2-5 10:17 | 显示全部楼层
Windows 的缩放除了整数倍
其他的比例都会让字体边缘多出来一堆锯齿。。被恶心的不行
ms 又不会把 ClearType 废了
在这点上哪怕是用 FreeType 的 Linux 都比你 Win 强
回复

使用道具 举报

     
发表于 2021-2-5 10:28 | 显示全部楼层
史莱姆KING 发表于 2021-2-5 07:11
放大缩小这块,win本身可以调节,还算可以

相当多的程序可以自适应

现在可以在win的兼容性设置里面调整了
回复

使用道具 举报

     
发表于 2021-2-5 10:36 | 显示全部楼层
win的问题是一堆老软件不支持缩放  如果你有这种软件  那所谓的各种计算就是搞笑了  
回复

使用道具 举报

     
 楼主| 发表于 2021-2-5 11:24 | 显示全部楼层
nice女武神 发表于 2021-2-5 10:36
win的问题是一堆老软件不支持缩放  如果你有这种软件  那所谓的各种计算就是搞笑了   ...

不,如果因为软件原因不打算动缩放百分比的话,对照96ppi购买显示器也是一种方案,这就是计算的意义。
回复

使用道具 举报

头像被屏蔽
     
发表于 2021-2-5 11:30 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

     
发表于 2021-2-5 11:37 | 显示全部楼层
27 4k,个人感觉200%缩放比较好,150%字体还是有锯齿
回复

使用道具 举报

     
 楼主| 发表于 2021-2-5 11:59 | 显示全部楼层
9-11-2001 发表于 2021-2-5 09:40
那么,4k显示器要接近24/23.5寸字体大小的话,买多少寸最合适?27寸?上限又是多少呢? ...

如果按照200%缩放计算,那当然是24寸最合适了。

如果150%缩放也能接受的话,就是找目标ppi是 96 * 150% = 144 的显示器

4K分辨率的话,根据https://www.omnicalculator.com/other/pixels-per-inch

得到的尺寸是30.6英寸

总体取决于你能接受的R值,然后找到能接受的缩放比例,再找显示器大小
回复

使用道具 举报

发表于 2021-2-5 12:01 | 显示全部楼层
那么我有两个27寸分别是2k和4k的显示器,缩放到底怎么调才能组双屏基本一致呢
回复

使用道具 举报

     
 楼主| 发表于 2021-2-5 12:05 | 显示全部楼层
那由 发表于 2021-2-5 12:01
那么我有两个27寸分别是2k和4k的显示器,缩放到底怎么调才能组双屏基本一致呢 ...

27寸保持100%,由于ppi为108.79,得到R为1.13,从R=1.13反推4K显示器的缩放比例应为x:

1.13 = (96 * x)/ 163.18

解方程可得 x =
回复

使用道具 举报

     
发表于 2021-2-5 12:05 | 显示全部楼层
还是macOS的HiDPI方便...
回复

使用道具 举报

     
发表于 2021-2-5 13:20 | 显示全部楼层
boday 发表于 2021-2-5 08:28
电脑的图形界面以 96 ppi 来设计是个老传统了。很多年以前的老显示器也会做成接近 96 ppi,比如 17 寸 1024 ...

我觉得光看等效ppi没啥用,一般不需要硬凑96,还得考虑离屏幕的距离。不同屏幕大小最合适的ppi不同,我感觉感觉直接看等效分辨率和屏幕大小就行了。关于笔记本,我的体验是高900像素最舒服。比如1920x1080的笔记本,其实120%最舒服(可是Windows调不到)。另外3840x2160的15.6英寸笔记本(也是我的情况)默认缩放是250%,我一般调到225%,然后浏览器额外调一个107%,凑到240%。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|Archiver|上海互联网违法和不良信息举报中心|网上有害信息举报专区|962110 反电信诈骗|举报电话 021-62035905|stage1st 沪ICP备13020230号-1 沪公网安备 31010702004909号

GMT+8, 2022-12-5 22:40 , Processed in 0.080561 second(s), 10 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表