对比系统不同分辨率的显示效果有感, HiDPI 的本质到底是什么? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
pocarisweat
V2EX    macOS

对比系统不同分辨率的显示效果有感, HiDPI 的本质到底是什么?

  •  
  •   pocarisweat 2023-03-18 21:29:15 +08:00 4704 次点击
    这是一个创建于 967 天前的主题,其中的信息可能已经有所发展或是发生改变。

    我在一台 16' MacBook Pro 上用 SwitchResX 对比了不同分辨率下的显示效果。这台笔记本屏幕的物理分辨率是 3456x2234 ,减去顶部刘海的 74 像素,剩下的屏幕是 16:10 的 3456x2160. 如果把分辨率设置为标准 16:10 ,刘海那一行会被留黑。

    这里都以去掉刘海后 16:10 的分辨率作对比,因为刘海在低倍数缩放下的效果实在是太搞笑了(无论逻辑分辨率有多大,那块位置始终会固定地留给菜单栏)。SwitchResX 的分辨率列表里会显示这个分辨率是否是 HiDPI.

    分辨率 HiDPI 缩放倍数 观感
    3456x2160 1 原生分辨率,没什么好说的
    2992x1870 1.16 还是很小,近看会觉得文字有点糊
    2624x1640 1.32 还是不适合正常使用的尺寸,因为字体更大一些,能更容易感觉到模糊
    2560x1600 1.35 没什么区别,说起来这个是 13.3 寸 MacBook 的物理分辨率
    2336x1460 1.48 一样区别不大
    2056x1285 1.68 这里开始标了 HiDPI 的标志,看着比较正常了,虽然依然小,但文字也非常清晰
    1920x1200 1.8 更大的缩放,反而没有 HiDPI ,看着比前一个更糊
    1728x1080 2 标准的 2 倍缩放,个人觉得从这个分辨率开始适合日常使用了,也很清楚
    1496x935 2.31 UI 更大,我日常使用的是这个
    1312x820 2.63 整个 UI 有点过于放大了,看的距离近点反而不舒服
    1280x800 2.7 类似以上
    1168x730 2.96
    960x600 3.6 应该不会有人用这些分辨率吧,太大了

    (另外好奇为什么没有 1152x720 这种标准 3 倍缩放的选项)

    我的印象一直是,macOS 要在 2 倍等整数倍缩放下才能没有糊的现象。但日常用 2.31 倍完全没有这个感觉,反倒是 HiDPI 是否启用影响更大。

    而且一直以为,HiDPI 完全是由分辨率决定的,不是单独的选项,比如大于某个渲染比例就打开,糊就是因为没法点对点,超采样应该也是分辨率决定的。但这样看来,难道是开或不开 HiDPI ,系统会采用不同的方式渲染字体?

    那这么来说,假如在某个非整数倍缩放的逻辑分辨率下,用某种方式强制打开 HiDPI ,效果就可以好很多?

    16 条回复    2023-03-19 22:47:14 +08:00
    thescfai
        1
    thescfai  
       2023-03-18 22:12:55 +08:00
    同 16"的 M1 macbookpro ,日常使用都是偏好设置中的“更多空间”,但是字体默认太小了,用“默认”的话,字体和 UI 又太大了,老款的 macbookpro 选择“更多”都没感觉字体那么小。
    Victorcao
        2
    Victorcao  
       2023-03-18 22:15:31 +08:00 via Android
    请用 betterDisplay!年轻人啊,还是太
    20015jjw
        3
    20015jjw  
       2023-03-19 00:46:27 +08:00 via iPhone
    其实稍微看一下 hidpi 的工作原理就不会在这里枚举
    顺便任何分辨率都能开 hidpi ,包括原生
    20015jjw
        4
    20015jjw  
       2023-03-19 00:50:25 +08:00 via iPhone
    > 那这么来说,假如在某个非整数倍缩放的逻辑分辨率下,用某种方式强制打开 HiDPI ,效果就可以好很多?

    是的 switchresx 就是干这个事情的
    allenchen10
        5
    allenchen10  
    PRO
       2023-03-19 05:33:36 +08:00   1
    你列的表格里最左边这一列是逻辑分辨率,启用 HiDPI 意味着渲染分辨率是大于逻辑分辨率的,自然会更清晰。HiDPI (High Dots Per Inch)的原意是类似于 Retina ,在单位面积有更多的像素,后来引申为代表 pixel doubling 这类用更多像素渲染单个点的显示方式。
    IslandOwnerHuang
        6
    IslandOwnerHuang  
       2023-03-19 06:33:01 +08:00
    第一次知道 SwitchResX 这个软件,试了一下,真的好用。系统默认的缩放分辨率档位太少了
    zhuangku556
        7
    zhuangku556  
       2023-03-19 08:10:24 +08:00 via iPhone
    你理解错了,macOS 的 hidp 是一律 2 倍放大,只是渲染分辨率的不同导致屏幕显示大小不同。效果最匹配就是(物理分辨率 /2 )。
    hello2090
        8
    hello2090  
       2023-03-19 09:53:05 +08:00
    看到别人讨论这个有 N 年了,一直不懂是干啥用的。
    就想问问 27 寸 4k 显示器上,开和不开有啥区别。
    Dream4U
        9
    Dream4U  
       2023-03-19 11:31:25 +08:00
    @hello2090 糊和不糊的区别
    shinonononomeme
        10
    shinonononomeme  
       2023-03-19 11:47:33 +08:00 via iPhone
    我记得 macOS 的 HiDPI 是固定按逻辑分辨率 2 倍渲染然后缩放到显示器物理分辨率输出,逻辑分辨率下的一个点渲染时对应 4 个点,大小不变但是渲染精度提高,所以开不开 HiDPI 文字渲染方式应该确实不一样
    hello2090
        11
    hello2090  
       2023-03-19 13:00:07 +08:00
    @Socrazy 同一台显示器,同一个缩放,开了不糊?那 27 寸 4K 等效 2K 开了能比不开好多少?不会有 5K 的效果吧
    icestraw
        12
    icestraw  
       2023-03-19 13:11:47 +08:00   1
    HiDPI 就是指定分辨率 x2 渲染界面,仅此而已。非整数倍开 HiDPI 是好一些,只要虚拟分辨率比物理分辨率效果大就行

    比如 27 寸 4k 显示器开 5k 的 HiDPI

    又比如 m1 之前的 Macbook Pro 15 ,从 2012 年开始都是 2880x1800 的物理分辨率。但是 2012-2015 年的电脑默认开的 1440x900 的 HiDPI ,也就是点对点。2016 年前苹果发过一次问卷,调查界面上的元素是不是太大了,后来从 16-19 款的 15 寸,稍微换了模具但是没换屏幕,但默认都会调到 1600p 的 HiDPI 。那几年的电脑默认就都不是点对点,默认那个分辨率就会有点糊。这两年 m1 换新模具了,又改回点对点的屏幕了。

    可以看我之前发的 https://v2ex.com/t/868424
    shinyy
        13
    shinyy  
       2023-03-19 13:16:49 +08:00 via iPhone
    基本原理就是利用混像元提高观感
    Dream4U
        14
    Dream4U  
       2023-03-19 13:49:04 +08:00
    @hello2090 物理分辨率决定了上限,4K 跟 5K 比是不现实的,27 寸 4K 永远达不到 5K 的细腻
    pocarisweat
        15
    pocarisweat  
    OP
       2023-03-19 16:24:01 +08:00
    @icestraw
    这个帖子我记得,当时还回复了。

    2016 款 15 寸 MBP 默认的分辨率我有印象,看着是糊的,所以我都会调大。这里这几个开启 HiDPI 的模式,视觉效果可能和 2 倍整数缩放有些许差距,但应该比旧 15 寸的默认效果好。

    不过我好奇,假如缩放大于 2 ,比如这里的 2.31 倍,那系统真的会超采样到 3 倍缩放进行渲染吗?
    icestraw
        16
    icestraw  
       2023-03-19 22:47:14 +08:00   1
    @pocarisweat 不会。macOS 目前没有 3x ,只有 1/2x 。iOS 是有的。

    除了物理 /适配因素,估计也有设计理念的原因。iOS 设备距离眼睛最近,因此用的 ppi 最高,mac 系列离得远所以没做,2x 就够了。

    即使是现在的 2x ,满足这么高 ppi 要求的显示器也就只有几台苹果自家的独苗显示器,20 寸的 4k ( UF4K ),27 寸的 5k ( UF5K/Studio Display ),32 寸的 6k 分辨率显示器( XDR )都是苹果自家出的 /定制的,苹果这么费劲才实现了 PC 端的 2x 。如果 macOS 有 3x 的话,逻辑 1080p 的屏幕得渲染 8k 的图像,无论对计算资源或者屏幕要求都太奢侈了。最接近这个的消费产品是 dell 32 寸的 up3218k ,但是在 32 寸的屏幕上显示逻辑 1080p 也太大了。短期内应该还是看不到符合这种要求的硬件产品出现。
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     842 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 36ms UTC 22:06 PVG 06:06 LAX 14:06 JFK 17:06
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86