【问题标题】:Font not rendering on Mac/iOS SafariMac/iOS Safari 上不呈现字体
【发布时间】:2015-04-19 10:28:09
【问题描述】:

我遇到了字体在 iOS 和 MAC OSX 上根本无法正确渲染的问题。它在我尝试过的其他任何地方都能正确呈现,包括全新的虚拟 Windows 7 机器。

真的开始磨我的齿轮了。

这是我定义字体的 CSS。

@font-face {
    font-family: 'Knockout';
    src: local('☺'), 
         url('Fonts/knockout.otf') format('otf'), 
         url('Fonts/knockout.woff') format('woff'),
         url('Fonts/knockout.ttf') format('truetype'),
        url('/Fonts/knockout.svg#Knockout') format('svg');
    font-weight: normal;
    font-style: normal;
}

对于旧版 SVG 文件,这是标题:

<defs>
<font id="Knockout" horiz-adv-x="269" >
  <font-face 
    font-family="Knockout"
    font-weight="500"
    font-stretch="normal"
    units-per-em="1000"

这是需要应用字体的实际类的 LESS/CSS 样式:

 .header
       {
            position: absolute;
            top: 0;
            font-family: 'Knockout';
            color: @ColorTealD;
            font-size: 10vw;
            pointer-events: none;
            text-rendering: optimizeLegibility;
       }

就我访问过的 StackOverflow 链接而言:

css @font-face doesn't work

Webfont not showing in iOS

@font-face not working in mobile Webkit

我还访问了一个建议使用笑脸技巧的链接,以及另一个建议在 SVG URL 前加上“/”的链接。我还擦除了 iPhone 上的 Safari 缓存。 我需要强调的是,这种字体出现在其他浏览器中,包括完全擦除的虚拟机。此时切换字体不是一种选择,因为已经为许可支付了 500 美元。

谁知道我还能做些什么来解决这个问题?我很确定接下来的步骤包括将处女扔进火山或给山羊放血。

【问题讨论】:

  • 究竟是什么渲染不正确?我知道这是一些使用数字的浏览器和字体权重的问题。 stackoverflow.com/questions/3367589/…
  • 没有文字。什么都没有呈现到屏幕上,只是内容应该存在的空白点。
  • 尝试清除缓存。
  • 已经试过了,没用

标签: html ios css fonts safari


【解决方案1】:

这可能是浏览器的问题,而不是字体或代码的问题。每个浏览器都会以不同的方式呈现字体。我在chrome中也遇到了这个问题。

您是否尝试过其他字体?如果另一种字体有效,那就是浏览器的问题。

【讨论】:

    【解决方案2】:

    “Knockout 32”字体原始文件中存在错误。我在 FontForge 中打开并重新创建了它。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-10-13
      • 2020-05-16
      • 2021-06-25
      • 1970-01-01
      • 2018-09-26
      • 2019-09-02
      • 2017-02-19
      • 2014-02-12
      相关资源
      最近更新 更多