Safari用户安装的字体不会呈现 [英] Safari user installed fonts don't render

查看:42
本文介绍了Safari用户安装的字体不会呈现的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我使用的是MAC OSX,我的Safari版本是13.0.3。我试着在我的机器上安装了一些定制字体。我在我的机器上安装了https://www.fontsquirrel.com/fonts/list/popular中的Great-vibes字体(仅是一个例子),它现在显示在我的字体书中的用户字体部分。我使用的是.otf格式的字体。我现在尝试在我的Web应用程序上使用它,如下所示:

@font-face {
  font-family: 'Great Vibes'; //Added postscript name as well, did not work
  font-style: normal;
  font-weight: 400;
  src: local('Great Vibes')
}
body {
  font-family: 'Great Vibes' !important;
}

这适用于Chrome和Firefox(即使没有@Font-Face)声明。但这不是在Safari上工作。我尝试了一些选项,比如-webkit-文本-笔划:.5px;文本呈现:OptimizeLegiability;但不起作用。我试着在我的机器上安装了不同的定制字体,但它们在Safari上也不起作用。我看到字体已正确安装。

注意:将自定义字体保留在我的应用程序代码中并使用@FONT-Face/src/url可以很好地工作。问题出在尝试访问计算机上的自定义安装字体时。

推荐答案

原因是Safari 12/MacOS Mojave禁用了用户安装字体的显示to combat browser fingerprinting,这可以通过观察您的系统配置(包括您安装了哪些字体)来启用在线跟踪。通过仅呈现默认系统字体,当然还有任何其他可通过Internet访问的字体,您的计算机看起来更像任何其他字体,并且变得更难跟踪。

如果要在Safari中使用非标准字体进行开发,则必须使用@font-face/src/url声明,该声明指向嵌入字体或托管在Internet上的字体。或者,您也可以禁用跟踪保护,但这可能不是一个好主意。

如果您在Firefox中激活了增强的跟踪保护,它也会阻止指纹识别,您应该会看到与Safari相同的行为。

来源:两个redditposts

这篇关于Safari用户安装的字体不会呈现的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆