前言
-
对于用惯了Retina显示技术的用户,也希望在第三方显示器上使用这种黑科技。
-
本人使用的是一台dell的24寸2K显示器,用原生2K分辨率显得太小了,故想起了使用HiDPI技术,也就是将几个点融合为一个点显示,这也是Retina技术的原理(如果不是,轻喷_)。
-
我的2K分辨率是2560x1440,所以我才用最好的方案,就是4个点化成一个点,我所适用的HiDPI分辨率是1280x720。
权限问题
- 10.11系统及以上,一些系统文件只有“系统”有权限读写,首先要关闭这个权限:
开机按住 command + R,进入恢复模式,然后在“终端”中输入“csrutil disable”关闭权限。如果想还原设置,则csrutil enable。
正文
-
开启HiDPI
打开终端, 命令分别是:
sudo defaults write /Library/Preferences/com.apple.windowserver DisplayResolutionEnabled -bool YES
-
获取你的显示器的两个ID:
打开终端, 命令分 别是:ioreg -l | grep "DisplayVendorID" ioreg -l | grep "DisplayProductID"
注意:如果你是笔记本的话,请拔掉显示器先得到这两个ID,然后插上显示器再获取ID。获取笔记本的ID的作用是为了区分到底哪个才是我们显示器的ID。
-
编写配置文件
-
新建一个文件夹,DisplayVendorID-XXXX,其中XXXX是你的DisplayVendorID的16进制值小写。
-
在终端中打开该文件夹,新建一个空白文件,文件名DisplayProductID-YYYY,自然YYYY就是你的DisplayProductID的16进制了,注意小写。
touch DisplayProductID-YYYY
-
下面要编辑这个文件,本质上是一个plist文件,建议使用PlistPro工具编辑,我自己的话有Xcode,就直接使用开发工具编辑。
编辑好的文件在工具打开的样子 -
贴上上面这段对应的源码:
<?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> <integer>41156</integer> <key>DisplayVendorID</key> <integer>4268</integer> <key>scale-resolutions</key> <array> <data>AAAFAAAAAtAAAAABACAAAA==</data> <data>AAAKAAAABaAAAAABACAAAA==</data> <data>AAAFAAAAAs8AAAABACAAAA==</data> <data>AAAKAAAABZ4AAAABACAAAA==</data> <data>AAAHgAAABDgAAAABACAAAA==</data> <data>AAAPAAAACHAAAAABACAAAA==</data> </array> </dict> </plist>
-
目前开启720P的方式其实是不行的,所以如图我使用了1280*719这个分辨率,可以基本是等同于720P的。
-
介绍一下data具体怎么来的:
- 比如我想使用1280x719这个HiDPI,那么我就需要生成两个分辨率,其中一个是1280x719,一个是其双倍,2560x1438。
- 1280与719对应的16进制是00000500与000002cf。2560与1438对应的16进制是00000a00与0000059e。
- 后面加上00000001及00200000。
- 如上图用工具编辑.
- 于是会得到:
00000500 000002cf 00000001 00200000 00000a00 0000059e 00000001 00200000
-
-
替换系统文件
- 打开Finer,打开前往文件夹键入:
/System/Library/Displays/Contents/Resources/Overrides/
- 将编辑好的文件夹放进去覆盖。
-
下载软件,RDM,然后重启电脑。
网友评论