两个似乎没有人谈论的神秘的网络字体错误(2018)

2020-05-29 10:35:47

文本呈现在一小部分网站上出现故障。它们通常是主要的网站,在那里你永远不会想到会有如此基本的东西被破坏,比如Apple.com,imgix.com,甚至我们亲切的主机媒介。至少有两个bug存在,据我所知,它们还没有被清楚地识别、记录,甚至没有命名。我希望你们中的一些人可能已经找到了原因。

它们可能只在Windows上发生,尽管它们似乎不是Windows的bug。我认为这些错误之所以逃过了人们的注意,是因为在网络开发社区的某些非专业的角落里,奇怪地缺乏对Windows的测试。

坑坑洼洼的文字:文字从字面上看是破碎的,就像下面苹果的页面上显示的那样。丢失了小块碎片。苹果的网站在Windows上,在所有浏览器中都是这样被破坏的,至少有两年的时间。

涂抹文本:文本被涂抹,字形线条粗细在超薄和过度粗体之间随机变化。

请看Super中S的顶部和Computer中C的顶部。你可以看到线条在哪里折断,几乎消失了,就像有人用白色油漆涂抹一样。看看iPad和Pro中P的顶部的锯齿状。(仅供参考,这种字体是Myriad Set Pro。)。

苹果的网站在Windows上就像这样瘫痪了至少两年。我在多个Windows8.1和10台机器上的所有主要浏览器上看到了它:IE11、Chrome、Firefox、Edge,我想甚至还有Opera(基于Chromium)。

在2016年末或2017年初的某个时候,这个问题在Microsoft Edge中消失了-我不知道Edge发生了什么变化,可以解决这个问题,但苹果的网站在Chrome、Firefox和其他浏览器上仍然无法使用。直到我在Quora上问是否有人知道苹果的文本渲染为什么会损坏,苹果才修复了这个错误。

我很少在网上看到这个问题。Wired.com的文本在几年前以完全相同的方式被破坏--这是我记忆中唯一的另一个案例。自那以后,他们修复了这个问题,但后来又让事情变得更糟,因为他们的标题选择了几乎无法阅读的字体:

这种字体更适合奴隶所有的雪茄店,而不是科技/左翼评论网站。

如你所见,文本极其污迹斑斑。字体是阿黛尔·桑斯,根本不应该是这样的。这是在imgix的开发文档页面上。我在2016年7月为他们写了一份错误报告,有很多细节和截图,但他们没有修复。他们说他们不能复制它,这很奇怪,因为我可以在任何Windows机器上用任何浏览器复制它。六个月后,我在Quora上询问了这件事--我没有时间隔离这个漏洞,但我非常好奇是否有人隔离了。

直到几分钟前,我还以为imgix和苹果一样,在Quora上询问了这个问题后就解决了这个问题。现在我意识到,他们可能已经在文档页面上修复了它,但现在他们的主页导航子菜单被生动地、痛苦地损坏了:

您可以在它们的主菜单标题中看到一些污点,但它确实会在弹出菜单中弹出。上面的图片在大多数显示器上都比真人大小小,所以如果你点击或点击它,它应该会展开,你会更全面地感受到这个错误。网络上的文本没有理由会变成这个样子--也就是说,毫无疑问,这是一个错误。

当imgix说他们不能重现这一点时,我想到了Medium网页设计师Marcin Wichary在Medium经历了一个非常糟糕的字体错误后写的一篇令人惊叹的帖子。他指出,由于该错误只发生在Windows和Linux上,他必须启动一些虚拟机才能重现它(请注意,这是在更改/错误被推送到生产环境之后)。

我差点从椅子上摔下来。Medium没有在Windows上测试吗?他们的办公室里没有任何真正的Windows机器,甚至连QA都没有?它们完全依赖于虚拟机,可预见的工作摩擦将导致较少的测试,甚至不会进行测试。它还导致与UI/GPU相关的行为缺乏有效性,并可能导致许多遗漏的bug。我不敢相信像Medium这样的大出版商会如此鲁莽,这让我怀疑如果IMGIX - 就是这样,他们可能也没有Windows机吗?

这句话出自“维特纪事报”的一篇文章。字体是Adobe的Source Sans Pro,绝对不应该是这个样子。查看Typekit上的字体,在Windows上,在任何浏览器中,看看它应该是什么样子。实际上,任何字体或字体都不应该是那样的。污迹是个虫子。

Marcin Wichary的帖子已经被编辑,去掉了Medium没有在Windows和Linux上测试,VM的使用等部分。我猜它得到了强烈的反应,Medium的CTO Dan Pupius在后续的帖子中试图有点倒退,他似乎暗示25%的用户并不是一个巨大的数字。他说“不到25%”(那么,24%?)。的中等访问者都在Windows上,就好像这是在证明…是清白的一样

Windows是一个重要的平台。台式机是一个非常重要的平台,在可预见的未来--它是我们工作的地方。所有出版商都应该在Windows、Mac和Linux上进行测试,除非99%左右的读者只来自一个平台。

在做我们的工作、测试等方面,在网络开发的某些角落存在着苹果的偏见,这是需要阻止的。开发者和用户有很多合理的理由选择Windows10,而不是Mac(或Linux)。(例如,一个原因可能是苹果最近取消了笔记本电脑所有最有用的端口,奇怪的是,同时大幅提高了价格-很少有人愿意花2800美元买一台连一个标准USB端口都没有,而且只有16 GB过时智能手机RAM(LPDDR3)的笔记本电脑。在美国以外,甚至只是某些美国城市,人们对Mac的兴趣急剧下降,所以如果你只在Mac上测试,你就是在边缘化人类中的绝大多数人。)。

我有时非常批评微软,但作为一名QA经理,我不可能把Windows留给VM,我也不可能接受文本呈现像我们上面看到的那样糟糕。好的文本渲染很容易在Windows上实现,绝大多数网站和应用程序都能做到(如果你正在构建本地或UWP应用程序,我强烈推荐微软的DirectWrite API)。

我没有太多的时间来隔离这些错误,所以我希望你们中的一些人知道发生了什么。我认为这将与字体文件有关,但不会像ttf vs otf或woff vs woff2那样明显。这可能与OTF来源字体中的GLIF表选择有关。有什么主意吗?

Joe Duarte是一名数据科学家、社会科学家和软件QA顾问。你可以通过[email protected]联系到他。