收藏
回答

wx.loadFontFace加载字体,安卓真机fail,模拟器和ios真机正常

框架类型 问题类型 API/组件名称 终端类型 微信版本 基础库版本
小程序 Bug wx.loadFontFace 客户端 7.0.4 2.6.6

- 当前 Bug 的表现(可附上截图)

在wx.loadFontFace调用后直接触发fail回调,只返回{"status": "error"}

模拟器正常,ios真机正常,不存在跨域,资源无问题


- 预期表现

安卓下正常显示


- 提供一个最简复现 Demo

https://developers.weixin.qq.com/s/aMdKQgmf7c8I


-字体路径

https://saler.sharejoy.cn/static/font/FZFSJW.ttf

大小约54KB


最后一次编辑于  2019-05-10
回答关注问题邀请回答
收藏

6 个回答

  • hexford~🐶
    hexford~🐶
    2019-07-11

    看看服务器返回的 content-type 是这个格式么

    2019-07-11
    有用 2
    回复 4
    • Cursol 👾
      Cursol 👾
      2019-09-23
      补充下,同时也需要: Access-Control-Allow-Origin: *
      2019-09-23
      回复
    • 孤風
      孤風
      2022-06-02
      现在这个问题还是存在的呢,content-type 都改过来了,但是还是IOS 可以加载字体,安卓的就是不行,也不存在跨域问题
      2022-06-02
      回复
    • 孤風
      孤風
      2022-06-02
      安卓手机的字体加载不了,这个问题还有其他的解决方案吗??
      2022-06-02
      回复
    • 与光
      与光
      05-24回复孤風
      请问这个问题您解决了吗,我这边使用的aws的S3字体文件,IOS和模拟器都正常,安卓手机失败。Access-Control-Allow-Origin和content-type都配置过了。
      05-24
      回复
  • 手心的温度
    手心的温度
    2019-09-16


    感觉官方说的太官方不好理解,简单点说就是,用postman,get方式去访问字体,响应出来的header,它里面content-type项、Access-Control-Allow-Origin项,这2项符合官方说的规范,应该就没问题了。

    字体的content-type的值包含的就是上面官方截图的template列的值。

    Access-Control-Allow-Origin这个值为了测试直接设置"*"就行了。

    2019-09-16
    有用 4
    回复 3
    • 浮云游子
      浮云游子
      2022-10-12
      完美解决
      2022-10-12
      回复
    • 世梦~天蝎
      世梦~天蝎
      2023-10-27
      还是不行
      2023-10-27
      回复
    • 与光
      与光
      05-24
      请问您解决这个问题了吗
      05-24
      回复
  • fisher lee
    fisher lee
    2020-12-03

        Header("Access-Control-Allow-Origin: *");

        Header("content-type: font/ttf");

    设置完, 就可以用了

    2020-12-03
    有用 1
    回复 2
    • Nothing
      Nothing
      2021-01-25
      不跨域也要设置吗
      2021-01-25
      回复
    • 世梦~天蝎
      世梦~天蝎
      2023-10-27
      还是不行
      2023-10-27
      回复
  • 讠豸
    讠豸
    2023-05-12

    我的字体文件是同源下的,无需处理跨域问题,在真机上还是引用失败

    2023-05-12
    有用
    回复
  • leesson
    leesson
    2020-11-29

    我加载了两个字体安卓上只显示了一种字体

    2020-11-29
    有用
    回复
  • 张鑫
    张鑫
    2019-05-09

    原来不只我有这个问题呀~

    2019-05-09
    有用
    回复 14
    • HikL
      HikL
      2019-05-09

      已试毒,安卓真机下字体文件3.7MB,回调fail,97KB,就是成功的,估计就是文件大小问题

      2019-05-09
      回复
    • 张鑫
      张鑫
      2019-05-09回复HikL

      我才30kb的纯数字字体,就是不行。难道是版权问题么?

      2019-05-09
      回复
    • HikL
      HikL
      2019-05-09

      我用的官网示例代码的资源地址,你的ios下是可以的?

      2019-05-09
      回复
    • 张鑫
      张鑫
      2019-05-09回复HikL

      你的字体文件IOS是可以的。安卓端不行~

      2019-05-09
      回复
    • HikL
      HikL
      2019-05-09回复张鑫

      难道你的是ios不行,安卓行?

      2019-05-09
      回复
    查看更多(9)
登录 后发表内容