1 - 开启hidpi
sudo defaults write /Library/Preferences/com.apple.windowserver DisplayResolutionEnabled -bool YES
2 - 获取显示器id
$ lorg -l | grep DisplayVendorID
$ lorg -l | grep DisplayProductID
3 - 新建文件
新建名为DisplayProductID-xxxx
的文件。xxxx就是上步中DisplayProductID的16进制小写。其内容为:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>DisplayProductID</key>
<!-- ProductID16进制小写 -->
<integer>0</integer>
<key>DisplayVendorID</key>
<!-- VendorID16进制小写 -->
<integer>2163</integer>
<key>scale-resolutions</key>
<array>
<data>
AAAKAAAABkAAAAABACAAAA==
</data>
<data>
AAAUAAAADIAAAAABACAAAA==
</data>
<data>
AAAKAAAABDgAAAABACAAAA==
</data>
<data>
AAAUAAAACHAAAAABACAAAA==å
</data>
<data>
AAAHgAAABDgAAAABACAAAA==
</data>
<data>
AAAPAAAACHAAAAABACAAAA==
</data>
<data>
AAAGkAAABBoAAAABACAAAA==
</data>
<data>
AAANIAAACDQAAAABACAAAA==
</data>
<data>
AAAGQAAAA4QAAAABACAAAA==
</data>
<data>
AAAMgAAABwgAAAABACAAAA==
</data>
<data>
AAAFoAAAA4QAAAABACAAAA==
</data>
<data>
AAALQAAABwgAAAABACAAAA==
</data>
<data>
AAAINAAAA4QAAAABACAAAA==
</data>
<data>
AAAQaAAABwgAAAABACAAAA==
</data>
</array>
</dict>
</plist>
分辨率说明:
比如我想使用1600*900
这个HiDPI,那么就需要生成两个分辨率,其中一个是1600*900
,一个是其双倍, 3200*1800
.
1600,900两个值的16进制是00000640 00000384
3200,1800两个值的16进制是00000C80 00000708
后面加上 00000001 00200000
于是会得到
00000640 00000384 00000001 00200000
00000C80 00000708 00000001 00200000
一定要用PlistEditor编辑器编辑,最终才能生成上面的xml。
4 - 重启
重启后,使用rdm切换
switchRes
禁用sip
macOS 10.11以上需要禁用System Integrity Protection SIP
1. 开机按住command + R
2. terminal输入csrutil disable
配置分辨率
如果status显示not install, 可以完全卸载switchRes以后, 官网下载最新版本再尝试