是时候升级您的显示器了

2020-06-18 00:07:43

我是一名程序员。我不处理数码绘画,照片处理,视频编辑。我真的不喜欢宽色域,甚至不喜欢合适的颜色再现。我每天的大部分时间都呆在文本浏览器、文本编辑器和文本终端上,看着几乎不会移动的字母。

所以我优化了我的设置以显示非常非常好的字母。要做到这一点,一个好的班长是必不可少的。有这样的人不太好。这是必须的。我说的“好”是指,你能拿到的最好的。这些是我的想法,根据我自己的经验,什么样的显示器最适合编程。

根据我在程序员中的调查,43%的人仍在使用每英寸像素密度低于150的显示器:

为什么这会是个问题?因为获得好的字母的唯一方法是在每个字母上花费更多像素。就这么简单。在过去,显示器的像素数很小,所以我们学会了适应,甚至发明了一些非常聪明的技巧来让我们的生活变得更好。需要了解的两件重要事情是:

为低分辨率显示器开发的技巧并没有魔术般地让文本看起来很好看。这一直是不可能的,现在仍然是不可能的。他们只是让文本稍微不那么可怕了,但它仍然很可怕。

如果您认为您可以以某种方式使您的1080p显示器呈现良好的文本,它只需要更多的调整,不。这不会发生的。你越早接受这一点,你就能越早开始寻找真正的解决方案。

为了让我的说法更有根据,让我们详细看看文本在低分辨率显示器上的真实外观,以及对此可以做些什么(剧透:没什么!)。

首先,根本没有足够的像素来绘制字母。让我们以Consolas为例,这是一种专门为程序员开发的字体。微软非常努力地对其进行了微调,以适应低分辨率渲染。我们将其设置为14px,这是VS代码中的默认值(人们通常会更低!):

在这个大小上,大写字母B在屏幕上只占6×9像素。小写字母只有7(7!)。要使用的垂直像素。那不算多。我的手指比那还多。不管字体设计得有多好,当你只有7个像素的时候,很难显示任何东西。任何比“T”或“H”稍复杂的内容都会变成难以辨认的像素。

请看上图中的“g”。很难说中风在哪里开始或结束,甚至不知道有多少中风。这只是随机的灰色噪音或棋盘,但不是字母。这是一封信:

真的很遗憾,看着这些美丽的细节被限制在仅仅7×10像素的范围内。

为了解决所有东西都是灰色的问题,Windows使用了相当咄咄逼人的暗示。基本上,它只是弯曲字母笔划并将其移动到最近的像素,从而确保更清晰的边界。

不过,别抱太大希望,这里还是一团糟。它不会让文本看起来很好看。它让它看起来更好,但它仍然很糟糕。

然而,暗示的主要问题是它破坏了字母的形状。像素渲染的位置不是它们应该在的位置,而是像素网格出现的位置。让你尝一尝:

这个想法是,当渲染到实际像素时,它看起来会更好。

但是,即使我们只看水平词干的垂直提示,字体的变化仍然太大:

看到水平字干是如何从其在矢量字体文件中的实际位置偏移的吗?这里的误差高达1/4像素!

但是嘿!如果你从来没有看过高分辨率的Consolas,谁会在乎g是不是相同的形状呢?如果你不知道茎最初应该放在哪里,谁会在乎茎放错了地方呢?嗯,有时候问题更明显:圆圈不是圆圈,相等的距离变得不相等,比例都错了,应该小的变大了,反之亦然。这里:

在移动水平主干以匹配像素网格之后(通过将它们偏移到1/2像素!),Windows很难将其他7个像素分割成3个相等的间距。不幸的是,另一种选择也好不到哪里去:

从我构建Fira代码的个人经验来看,我已经看到太多简单的想法“只需将边缘粘贴到最近的像素”可能会出错:

是。这个想法很简单,真的。显示器的像素由三个垂直子像素组成,每个子像素负责它们的颜色。我们可以单独点亮它们,有效地将水平分辨率提高三倍!

然而,在实践中,你不能照字面意思去实现它,因为你最终只会得到一个圣诞彩灯的烂摊子:

因此,您必须再次妥协(在另一个妥协中!),对颜色可以偏离黑色多远进行限制:

这意味着字母形状不是3倍清晰,可能是1.5倍清晰,但总体上仍然相当模糊。

最后,可读性有所提高,但与此同时,白底黑字的周围出现了轻微的蓝橙色光环。不是特别糟糕,但是你可以看到。

我想说的是:所有这些伎俩都奏效了。严格来说,拥有它们总比没有要好。对于低DPI显示器,所有这些都是必须的。但与此同时,它们是在我们没有更好的展示的时候做出的一种紧密的妥协。现在我们有了他们,是时候把所有的把戏都去掉了。

视网膜Macbook可以让文字看起来更好看。然而,有两件事是你绝对必须做的。

这些天我不确定它的默认值是多少,但无论如何要确保它是关闭的。

这个偏好名称具有误导性。它过去被称为“LCD字体平滑”,建议使用亚像素抗锯齿。但苹果在2018年从MacOS中移除了亚像素抗锯齿,就在同一个月,苹果退役了最后一款非视网膜笔记本电脑。

这个名字暗示的另一件事是,您的字体可能根本不会平滑。情况也不是这样。

那么,你为什么要把它摘下来呢?因为没有自动设置粗体的方法。通常,每种字体的粗细都是由专业的字体设计师精心设计的。这是一个棘手的过程,涉及数以百万计的限制。例如,如果你试图通过在信上添加一个轮廓来模拟它,它看起来会很糟糕:

但这正是MacOS中的“字体平滑”所做的事情!这是另一个例子。MacOS使用“字体平滑”模糊像素完美的边界:

想象一下,一个字体设计师小心翼翼地平衡每个字母,把每个点都放到像素的1/100,结果却被愚蠢的软件忽略了,因为它认为自己知道得更好。

这对我们程序员来说意味着什么呢?如果您采用针对特定像素大小进行手动优化的字体(许多编程字体都是这种字体,例如11px输入或12px Monoid输入),尽管付出了所有努力,它仍将呈现模糊状态。

所有其他字体,包括系统字体,都会比需要的稍微模糊一些。

当我在2012年购买我的第一台(也是世界上第一台)Retina Macbook Pro时,它和宣传的完全一样:2倍缩放,每个逻辑像素都渲染到2×2屏幕像素。2880×1800屏幕将从1440×900逻辑源渲染。

可悲的是,苹果从那时起就失去了理性,在某个时候,Macbook开始默认使用奇怪的非整数缩放。例如,2880×1800屏幕将具有1680×1050的逻辑分辨率。即1.7142857143…。比例因子,或12/7。

为什么?我猜,苹果公司的某个人认为屏幕面积越大销售越好。问题是,这并不是很大的增长:只有15%。我是说,15%不错,但不能改变游戏规则。可怕的是,这是以失去任何渲染像素清晰图像的机会为代价的!

让我们看看。12/7比例因子意味着对于每7个逻辑像素,有12个对应的屏幕像素。这意味着,每7个像素,您就有机会绘制一个7像素高的矩形,这是您与像素网格对齐的唯一机会。

向上或向下移动1个像素-您会输。把它变高或变短1px-你输了。

一条像素完美的线条?太糟糕了,您不能指定7/12像素作为线宽。更糟糕的是,根据垂直位置的不同,每条1px的线条看起来也不一样:

现代图标大多由单像素宽的笔画组成,这并不令人惊讶:

很难想象有人会故意看这个。

文本会发生什么情况?没什么好东西。首先以2倍分辨率渲染像素清晰,然后以85.7142857143…缩小。%以适合物理像素:

没错,UI甚至没有以奇怪的目标分辨率呈现。每个Mac应用程序都认为它是以2倍的分辨率渲染的,只有在操作系统将其缩小到目标分辨率之后才会进行渲染。由于这个两步调整大小的过程,会损失很多精度和细微差别。

在我看来,没有什么比这对UI外观更有害的了。即使是旧的低分辨率UI也更好,因为它们的线条至少与像素对齐!

别忘了:这是默认设置。每台Macbook都带有这些设置。数以百万计的人正在工作,而不知道他们被剥夺了视网膜屏幕的乐趣。

对我们来说幸运的是,这很容易解决(至少目前是这样)。转至System Preferences→Display,取消选中Default,然后选择2 x分辨率:

这将使屏幕上的所有内容都稍微大一点,留下您(稍微!)。更少的屏幕空间。这是意料之中的。我的观点是,根据定义,笔记本是一个受限的环境。额外的15%不会神奇地把它变成一个巨大而舒适的桌面。但至少你可以享受华丽的屏幕和像素清晰的字体。否则,你为什么要买视网膜屏幕呢?

所有人都在谈论ClearType的缺点,以及它只在低密度显示器上是必备的,你应该在4k显示器上关闭它吗?从理论上讲,是的。在实践中,不是这样的。

首先,Windows甚至没有关闭它的UI。我是说,这里有个复选框:

但是,即使您将其关闭,您也必须配置ClearType。没有“确定”按钮\_(ツ)_/。

如果你以这种方式关闭它,它会在某些地方消失,但在另一些地方会继续出现。我猜这些地方使用不同的API,一个地方尊重这个设置,而另一些地方不尊重这个设置。

最重要的是,没有ClearType的文本看起来像狗屎。这不是必须的(例如,它在MacOS上看起来很完美),但特别是在Windows上,它让人无法忍受。我猜他们甚至不会把这个作为一种选择来测试:

为了好玩,我用相同的字体、大小和颜色重新打印了所有的文本标签,但在MacOS上:

但Windows上的ClearType-d文本看起来仍然不错,即使在4k显示器上也是如此。很遗憾,我们还不能让ClearType离开。

让我来表达一下我的看法。毕竟这是我的博客。我认为笔记本电脑不利于发展。他们在机动性和便利性方面都很棒,对一些人来说,这一论点可能比其他一切都重要。我接受这一点。不过,台式显示器+外接键盘总是比笔记本好。不买显示器可能还有其他原因,但我希望,拥有一台显示器,没有人会说这是一个优越的开发环境。

这样一来,问题就出现了,您应该买哪台显示器呢?从我们已经讨论过的情况看,有两件事应该弄清楚:

它至少需要一个4k显示器。当然,5k和6k都很棒。1个。

这意味着,如果您有一个4k显示器(3840×2160),并使用2倍缩放,您将获得相当于1920×1080个逻辑像素。因此,它是一个基本的1080p显示器,你可以容纳多少,但有更清晰的用户界面和文字的一切。

现在,它可能很诱人,例如,使用1.5倍缩放。这将为您提供相当于2560×1440个逻辑像素的图像,您可能会认为这要好得多。你不应该这样使用它!4k显示器的理念不是要获得更多像素,而是要获得像素完美、高密度的UI渲染效果。否则,正常的1440p显示器会工作得更好。记住一条简单的规则:像素对齐比其他一切都重要。1440P显示器比2160P显示器更适合显示1440P内容。

也可以运行本地3840×2160像素的4k显示器。当然,这取决于显示器的大小,但根据我的经验,即使是27英寸的4k显示器也太小了,不能以1倍的速度运行。UI将会太小。

一些文章建议,苹果电脑应该只使用220ppi的显示屏(像素/英寸),因为这是苹果自己在所有Macbook和iMac上使用的数字。有时人们甚至说,不同PPI的显示器在MacOS上是无法使用的。

我是这么想的。PPI定义像素的物理大小(220 PPI表示每英寸有220个像素,或1个像素表示1/220英寸宽)。因此,苹果确保其所有设备上的像素具有相同的大小。这是否意味着MacOS控件具有相同的物理大小?在苹果开始在Macbook上默认应用非整数缩放后,情况就不再是这样了。

然后,几乎不可能确保感知的大小或用户看到的控件有多大是相同的,因为到显示器的距离是不同的。例如,我使用笔记本电脑时,眼睛到屏幕的平均距离是33厘米,而使用显示器时,我的眼睛到屏幕的平均距离是68厘米。这是2倍的差异!

这意味着1/220 Macbook像素的角度大小相当于1/110显示器像素。实际上,我在4k 27英寸显示器上的像素比我在15英寸Macbook Pro上的像素要小!

就连苹果自己也明白这一点!他们的iPhone比Macbook的PPI更高,因为他们通常是从更近的距离观看。

总而言之,我认为24英寸的4k显示器甚至27英寸的显示器都没有问题。我同时使用MacOS和Love两者,从来没有出现过任何问题。当然,5k或6k会更好,但这些都属于“拥有很好”的类别。4K是必备的,对于任何处理文本的人来说都是绝对的最低要求。

世界曾经被分成两大阵营:高分辨率显示器和高帧率显示器。前者适用于文本,后者适用于游戏,两者之间没有中间地带。如果你喜欢玩竞技游戏,两个都买(还有一张大桌子)。游戏玩家没有4k显示器的用处,因为没有任何合理的游戏会在4k Hz@1120 Hz下运行,创意专业人员在图片/文本编辑方面也没有120 Hz的用处。当然,自2014年以来,我一直处于高分辨率阵营,永远不会用视网膜文本渲染来换取几乎不明显的刷新率升级。

嗯,分裂已经不复存在了。因为不久前(是的,我懒得去检查),你可以两者兼得!您可以拥有一台4k显示器,运行频率为120 Hz。事实上,这一发现是本文的主要动机。

如果你像我一样处理文本,你可能会认为120赫兹是没有用的。那你就是对的。这属于“很高兴拥有”的类别,但如果你正在寻找改善体验的方法,这是一个很好的方法。

动画更平滑,直到它们开始看起来像一个连续的运动,而不是非常快的幻灯片放映。

当然,我不能给你展示120赫兹的感觉。但这是你可以做的,以获得这个想法:切换到30赫兹,并尝试这样工作一段时间。

你会注意到,所有东西的动画效果都很差,但响应性也很差。这是因为监视器更新之间的时间现在是32毫秒,而不是60赫兹下的16毫秒。这意味着无论你做什么(按下按钮,移动鼠标),计算机开始显示结果的最近时刻可能距离你32毫秒。

32毫秒是一段很长的时间,很容易被感知到。在60赫兹上,这一时间减少了一半:你需要等待的最长时间只有1600毫秒。在120 Hz上,这是时间再次减半:从16毫秒减少到8毫秒。在绝对数上,你额外损失了8毫秒,这意味着去60赫兹→120赫兹的影响大约是去30赫兹→60赫兹的一半。在我看来,这仍然是值得追求的东西。

真的没有太多选择。据我所知,目前市面上只有四款(是的,四款!)4K 120+1赫兹显示器!我想那是因为需求不是很高,但是,我很高兴我们至少有这些!

我敢肯定,它们都是非常好的监视器。但这个价格有点太高(约2000美元),特别是对于一些人来说,获得120赫兹并不是生死攸关的问题。

这里几乎没有更多的对角尺寸为55英寸或更多,这将很难在正常的桌面上使用。

最后,由于一些令人难以置信的运气,我们实际上有一个合理的价格,合理的大小4k 120赫兹显示器。这是宏基硝基XV273K:

在Windows上以120 Hz的频率运行4k非常简单。确保您的显卡有DisplayPort 1.4,使用它,就这样。说真的,它真的很管用。

MacOS支持很糟糕。在官方看来,苹果电脑都不支持超过60赫兹的任何东西,即使是在正常分辨率下也是如此:

因此,购买这个展品纯粹是信仰的飞跃。我是这么想的:

4K@120 Gbit/s需要3840×2160×3×bpp×120 Gbit/s×8*=224 Gbit/s,略低于DisplayPort 1.3/1.4的25.92 Gbit/s。

迅雷3可以搭载DisplayPort 1.4,所以只要我能找到适配器,我就可以了。

好的,那么闪电图标表示迅雷(不要与照明端口混淆!),铁路开关表示USB-C。现在看看你的Macbook吧:

我想您只需要知道\_(ツ)_/就可以了。或者,你也可以看看苹果直观命名的页面SP794:

好,首先,迅雷3(USB-C)是什么意思?是迅雷3还是USB-C?这可能是“完美工作”和“根本不工作”之间的区别:

然后显示“DisplayPort over USB-C”(但我们有迅雷3,而不是USB-C!)。它没有指定DisplayPort版本,没有它就毫无用处。上面还说USB 3.1 Gen 2受到10 Gb/s的限制,但我猜USB 3的限制不适用于USB-C?另外,USB3.1Gen 2是什么名称?USB 3.2是否已被占用?

原来迅雷3可能搭载DisplayPort 1.4,也可能不搭载。其中一些只走到了民主党1.2。你的Macbook里有哪一个?使用我的图表:

我想我们都会同意,整个迅雷/USB-C的情况是“人类创造的最令人困惑的端口标准”的有力竞争者。

长话短说,我很幸运。我的Macbook Pro 2019端口正确,使用迅雷3(USB-C)转DisplayPort适配器,一切都正常。我的理解是,设备上的端口版本很重要,但电缆和适配器并不重要,只要它们物理上可以插入洞中即可。在我的案例中,它是小米USB-C→微型DP转换器和微型DP→DP电缆。

这对你管用吗?不知道!要是那样就好了。我只知道你应该确保你的迅雷3可以搭载DisplayPort 1.4。这就是神奇的组合。

你的Macbook必须有独立显卡(我想)。2各种英特尔超高清/虹膜显卡无法正常工作。eGPU工作正常。

但即使你有兼容的Mac、兼容的端口、兼容的电缆,这也是不够的。每次我启动Mac时,我都必须执行一个仪式,才能让我的显示器切换到120 Hz模式。我称之为“120赫兹的舞蹈”:

按住Alt/Option键(上面有⌥的那个键)的同时,单击“缩放”分辨率。

要访问刷新率选择器,请选中“显示低分辨率模式”复选框。l代表逻辑。

看看里面的“刷新率”。大多数时候,那里最高的选项是“60赫兹”。

请再次查看“刷新率”下的内容。希望现在能有一个“119.88赫兹”的选择。

为什么是119.88赫兹,而不是120赫兹?不知道。看起来效果是一样的。为什么MacOS不记得了?我不知道。为什么在我关闭/打开显示器之前,MacOS没有看到120赫兹的选项?谁知道呢!主要的结论是,120 Hz的选项可能不会总是出现,但在围绕它跳了一些舞之后,可能会出现,如果它出现了,它实际上是有效的,尽管可能性很大。

整个情况让我想起了2014年购买4k显示屏的情景:型号只有几款,端口让人摸不着头脑,苹果的支持也很烂。希望在五年内,120 Hz将成为一种标准。在此之前,我们应该庆幸的是,尽管带来了极大的不便,但我们至少可以在MacOS上使用现代显示器。谢谢你,苹果!

每个人都需要一个梦想。在某个时候,4k@120兆赫将成为商品,我们甚至可能看到5k@120兆赫甚至更多。我们还可能看到视网膜屏幕的比例为21:93,甚至32:9(更多水平水疗。

..