警告:本文包含直接修改配置文件的危险操作,请谨慎模仿。


我 2015 年买了两台电脑,分别是 Surface Pro 3 和 Asus UX501JW,一直用到现在。它们有一个共同的特点就是分辨率扯淡。众所周知,Windows 默认只能以 25% 为一级调节缩放,但我两台电脑最合适的缩放分别是 160% 和 240%。Surface Pro 从 4 代开始改了分辨率和屏幕大小,200% 就很舒服,可我的是 3 代。

为了看得舒服,我在系统里设置成 150% 和 225% 缩放,然后把浏览器设置成 106.666666666666667%,这样可以达到最佳效果。

其他浏览器

当你调整默认缩放时,你会发现目前所有的浏览器都只能在浏览器给的选项中选一个,而不能任意输入。这些浏览器都不提供 106.666666666666667% 或者 107% 的缩放级别,而 110% 对我来说又有点太大了。

如果你用的是 Chrome 或 Firefox,你可以通过 F12 开发者工具修改缩放级别。

Chrome

首先打开设置,在“网页缩放”一项的值上点右键,然后点“检查”。

在开发者工具中展开默认选中的一项,就可以看到默认给出的选项及其对应的值。

随便选一项你喜欢的,比如“25%”,把 value 属性改成你要的缩放值,比如 1.06666666666666667,然后再在设置中选择这一项。

大功告成,现在你的 Chrome 默认就是 106.666666666666667% 缩放了。

Firefox

Firefox 的设置方法大同小异,只是设置页面上没法右键,要先按 F12 打开开发者工具,再选取相应的元素。

Chromium Edge 的困难

上面说的办法对 Chromium Edge 无效,因为 Chromium Edge 把这个下拉列表做成了按钮。只有你点开了下拉列表,所有的选项才会创建出来。当你试图修改时,选项又会自动收起来,让你修改不了。

从旧版 Edge 转移到 Chromium Edge 时,导入设置把缩放也一起导入进去了,所以暂时用着还算舒服。但是,我在 Edge 上登录的学校账户是另一套配置,由于无法设置成 107%,只好用 100%,看起来有点费力。我尝试过追踪修改设置时 Chromium Edge 执行的网页脚本,但以失败告终,就这么将就用了大半年。

直接修改配置文件

今天突然想到,可不可以直接修改配置文件,把缩放设置成 107%。一直以来我都非常抵触手动修改配置文件,尤其是本来应该程序自动处理的配置文件,因为很容易改不对。就以设置缩放为例,在不了解内部原理的情况下,你无法保证缩放比例是单个数值控制的。如果是多个值共同控制,而你只改了一个,就很容易造成问题。我浏览器的学校账户没什么东西,改坏了可以把账户删了重建,我才敢改的。

出乎意料的是,很容易就成功了,现在学校账户的缩放被我设置到了 107%,但我并不知道有没有什么隐患。

我首先来到了 %LOCALAPPDATA%\Microsoft\Edge\User Data 文件夹,看到一个显眼的“Profile 9”文件夹,我猜这可能是学校账户。进去之后看到一个没有扩展名的“Preferences”文件,就用 Visual Studio Code 打开,发现是一个 json 文件。我在里面搜索“zoom”,找到了两个结果。

然后,我想找默认账户的配置文件对比一下,但是在“User Data”文件夹里没找到“Preferences”。搜索之后发现在“Default”里。打开搜索“zoom”,还真找到一个疑似控制缩放的选项:"default_zoom_level":{"x":0.35399898546077163}

虽然不明白具体意义,我还是把它复制到了 Profile 9\Preferences 里,当然这时浏览器是关着的。保存以后打开,发现缩放变成 107% 了。

为了验证,我在设置里把缩放改成其他数值,发现配置里的数也变了。

这个值的意义

我一开始猜想是缩放比例乘上一个系数,但试了两个值发现不是。当我把缩放设置成 100%,我发现配置里的值变成了 0,于是我猜,可能是对数。验证一番发现,配置里的数是对缩放取 1.2 为底的对数。

此后我又发现,Visual Studio Code 的缩放选项就是取 1.2 的对数。

考虑到 VS Code 是基于 Electron 的,而 Electron 又基于 Chromium,这可能印证了我的想法。