黑苹果一键 HiDPI
搞了一台飞利浦的 2K 显示屏,本来以为只要外接显示屏的分辨率够了就可以获得 Retina 的细腻效果。但事与愿违,后来查询后发现苹果的 Retina 效果是外接显示器不可能达到那样的细腻,但外接显示器只要分辨率够,可以通过软件渲染得来 Retina 效果,这就是 HiDPI 技术。
HiDPI 本质上是用软件的方式实现单位面积内的高密度像素。用四个像素点来表现一个像素,因此能够更加清晰细腻。
高 PPI (硬件) + HiDPI 渲染 (软件) = 更细腻的显示效果 (retina)
但是悲剧的是,苹果觉得 2K 显示器没法做到真 HiDPI(4K 刚好渲染出真 1080P 的 retina 效果),所以只有在 4K 屏幕上才能直接开启 HiDPI。
所以这里先划下重点,如果想要完美效果,那直接上 4K 屏!
但是已经买了 2K 屏,总不能退掉,而且 4K 屏的价格也是 2K 屏的 2 倍以上。所以 2K 屏也可以通过软件强行告诉系统,这个屏幕可以开 HiDPI,你就直接开吧!
下面就记录在给 2K 屏开启 HiDPI 碰到的问题,有手动和脚本自动两种方法,但是不知道怎么回事,海天手动的方法就是没开启成功,最后使用脚本却成功开启了。
开启 HiDPI 的对比
下面两张是用 iphone 手机手持在一个相对差不多的位置拍摄的,可以看出,开启后字体的显示还是清晰很多。
手动开启 HiDPI
获取外接显示器 DisplayVendorID 和 DisplayProductID
在终端工具输入:
1 |
|
就可以获得显示器的 DisplayVendorID 和 DisplayProductID,如果获得两个,那说明的你的 macbook 还在亮着,可以合盖来排除掉,获得外接显示器的 DisplayVendorID 和 DisplayProductID。
制作外接显示屏系统配置文件
转换为 16 进制
将 DisplayVendorID 和 DisplayProductID 的数值,转换为 16 进制,网上有很多工具,这里就不提供了。
创建显示器配置文件夹
然后新建文件夹,命名为:DisplayVendorID-XXXX,其中 XXXX 是刚才转换的 DisplayVendorID 的 16 进制值小写。
创建显示器配置内容
这一步需要借助工具来生成,点击这里进行生成,将显示器的名称、DisplayVendorID 和 DisplayProductID 对应填写进去,即可获得配置文件,然后下载文件到,刚创建的 DisplayVendorID-XXXX 文件夹内。(记得将 plist 的后缀去掉)
到这一步,显示器的配置文件已经手动创建好了,需要将文件放到系统的 /System/Library/Displays/Contents/Resources/Overrides/ 文件夹内。(这里需要打开 SIP,方法可参考文末)
然后使用软件 RDM 即可开启 HiDPI。
脚本开启 HiDPI
找到两个脚本,大家都可以试一下,我是使用国人制作的 one-key-hidpi 开启成功的。
看介绍 one-key-hidpi 的作者还是参考的 Enable-HiDPI-OSX,但是我使用 Enable-HiDPI-OSX 却没有成功。
脚本一键开启很方便,将脚本下载下来,运行脚本,按照提示操作即可。
下载脚本并运行
1 |
|
按照脚本提示输入对应数字即可
开启 SIP
苹果操作系统对于系统的保护是很严格的,不管是上面的手动操作,还是脚本,都必须打开 SIP 也就是系统防火墙。
查看 SIP 状态
在终端中输入 csrutil status
,就可以看到是 enabled
还是 disabled
。
关闭 SIP
- 重启 MAC,按住
cmd+R
直到屏幕上出现苹果的标志和进度条,进入Recovery
模式 - 在屏幕左上方的工具栏找到实用工具(左数第 3 个),打开终端,输入:
csrutil disable
- 重启 mac
打开 SIP
- 重启 MAC,按住
cmd+R
直到屏幕上出现苹果的标志和进度条,进入Recovery
模式 - 在屏幕左上方的工具栏找到实用工具(左数第 3 个),打开终端,输入:
csrutil enable
- 重启 mac
使用 RDM 设置分辨率
RDM 全称为 Retina Display Manage,下载安装即可:http://avi.alkalay.net/software/RDM/
重启后打开 RDM,选取带雷电符号的 1920x1080,即可开启 HiDPI。
注意
最后在提醒一下,最好用一个好的扩展坞连接,我一开始用一个山泽的扩展坞,怎么也点不了 1920×1080 的 HiDPI 的设置,但是换了个绿联的就可以了。
神奇的是,HiDPI 开启成功后,我换回山泽的,却还是可以正常使用。