MacBook外接2K显示器开启HiDPI

MacBook 使用 Retina 技术的屏幕,用久了之后外接的 2K 显示屏(分辨率 2560 1440)字很小,感觉很模糊。如果开启显示器的 HiDPI,分辨率会降到 1920 1080,但能获得和 MacBook 内置的 Retina 屏幕相似的显示效果。

以下内容在 MacOS Mojave 10.14.1 测试通过。

暂时关闭 SIP

SIP 全称 System Integrity Protection,即系统完整性保护。该机制保护系统核心文件和目录不被修改,即使 root 用户也不行。对显示器配置文件进行修改,首先需要关闭 SIP。

重启 MacBook,在开机时按住 Command + R,进入恢复模式。在终端中执行

1
csrutil disable

然后重启 MacBook。

注意:关闭 SIP 是不安全的,最后一定要记得重新开启。

开启 HiDPI

1
sudo defaults write /Library/Preferences/com.apple.windowserver.plist DisplayResolutionEnabled -bool true

获取显示器信息

这一步需要获取外接显示器的 DisplayVendorID 和 DisplayProductID。使用这两个命令:

1
2
ioreg -l | grep "DisplayVendorID"
ioreg -l | grep "DisplayProductID"

首先不外接显示器,输入以上命令,获取 MacBook 自己屏幕的 ID。然后外接显示器,输入同样的命令,多出的 DisplayVendorID 和 DisplayProductID 即是外接显示器的 ID。

注意:这里获取到的 ID 都是十进制的。

生成配置文件

打开 Scaled Resolutions for your MacBooks external Monitor 网站,按照提示填写内容。

  • DisplayProductName:在系统偏好设置中展示的显示器名称;
  • DisplayProductID:上一步中获取到的 DisplayProductID 的十六进制
  • DisplayVendorID:上一步中获取到的 DisplayVendorID 的十六进制
  • Scale Resolutions:这里选择分辨率,注意 HiDPI 要选择双倍的分辨率,例如 1920 1080 的 HiDPI,应该选择 3840 2160 分辨率,并勾选 HiDPI。我这里选择了两种分辨率:2560 * 14403840 * 2160 + HiDPI

复制生成的内容。

写入系统配置

1
2
3
4
5
cd /System/Library/Displays/Contents/Resources/Overrides/
sudo mkdir DisplayVendorID-XXXX
cd DisplayVendorID-XXXX
sudo touch DisplayProductID-YYYY
sudo vi DisplayProductID-YYYY

此处,XXXX 是 DisplayVendorID 的十六进制表示,YYYY 是 DisplayProductID 的十六进制表示。将上一步生成的内容写入到该文件中,重启电脑。

使用 RDM 切换分辨率

下载 RDM 并安装,连接显示器,即可在 RDM 中为外接显示器选择 HiDPI 分辨率(带有 ⚡️ 标识)。注意只能选择已经写入到配置文件中的 HiDPI 分辨率,否则无效。

开启 HiDPI 后,可以退出 RDM,以后每次连接显示器仍然有效。

重新开启 SIP

重启 MacBook,在开机时按住 Command + R,进入恢复模式。在终端中执行

1
csrutil enable

然后重启 MacBook。

参考链接

觉得有用可以请作者喝杯咖啡呀~
0%