感谢IT之家网友 最差WP开发者PCDOS 的原创投稿
在Windows 10电脑版中,显示器的缩放比率基本上都是可以调到100%的,哪怕是Surface Book这种分辨率巨高而屏幕其实不算大的设备。而在Win10移动版中,微软却将这个缩放比率的最小值设定在了一个较高的值上。比如,Lumia 830的最小缩放比率就被设定在了150%。但是在事实上,这个缩放比率是可以被控制到100%并正常显示的——如果您有一副好眼睛的话。
▲ Lumia 830将缩放比控制到100%后的[设置]
事实上,微软在[设置]程序中屏蔽了100%的缩放比例,而通过“万能”的注册表,就可以轻松突破微软设定的缩放比例下限。
方法如下:
准备工作:
将您手机的缩放比例调到最小,比如Lumia 830为150%。重启手机。之后,再次打开[显示]页面,拖拉一下缩放比例的滑杆,记住缩放比例变化的最小值。例如,Lumia 830为25%。为了方便描述,将这个最小变化值记为“公差”d。
正式工作:
首先,部署Interop Tools工具,并执行Interop Unlock(互操作解锁)。方法不再赘述。
之后,切换到Interop Tools的Registry Browser工具,定位到以下路径:
HKLM > SYSTEM > ControlSet001(注: CurrentControlSet亦可) > Control > GraphicsDrivers > ScaleFactors
这里应该会有一个名称非常长的注册表项,比如我这里的“KN[00110_09……”,打开它,里面会有一个名为DpiValue的DWORD值,点击打开。
您应该注意到了这是一个非常巨大的数,之后计算一下您要让缩放比例在目前的基础上减小几个d。例如,我想将缩放比例调到100%,目前的缩放比例是150%,那么我要减少50%,即两个25%,即两个d。
确定需要减少n个d之后,将DpiValue的值减去n。比如我要减少两个d,那么本项的值需要改为4294967292。
注意:不建议让减小后的缩放比例小于100%!
确定之后,点击菜单栏的“对勾”符号,保存更改。重启手机。
附: Lumia 830将缩放比例调至100%后的结果。
那么,实现原理是什么呢?
在微软的技术文件中,对Win8.1/Win10的DPI缩放做了如下定义(查看原文):
由于Lumia 830默认缩放比例为200%,此时DPIValue的值为0,而当缩放比例改为150%时,由于减少了两个单位量d,DPIValue的值变为-2,由于DPIValue是一个DWORD项,所以-2被用八位十六进制表示为0xFFFFFFFE,而Interop Tools非常”忠实“地把它翻译成了十进制数……
▲ FFFFFFFE在QWORD(左)和DWORD(右)下对应的十进制数
在示例中,DPIValue的值被减去了2,也就相当于FFFFFFFE变成了FFFFFFFC,即DWORD中的-4,而200+(-4)*25=100,缩放比例也就被人为地设定成了100%。
广告声明:文内含有的对外跳转链接(包括不限于超链接、二维码、口令等形式),用于传递更多信息,节省甄选时间,结果仅供参考,IT之家所有文章均包含本声明。