收藏
回答

Canvas ctx.font loadFontFace 第三方字体 模拟器可以,真机无效?

//1 canvas 
<canvas 
id="canvas-label"
canvas-id="canvas-label"></canvas>
//2 字体
url("https://hao.tinymomo.com/public/uploads/dongfangdakai.ttf")', family:'fangdazhengkai'
//3 ctx.font  italic 斜体 weight fontSize family 第三方字体
this.ctx.font = this.italic + ' ' + this.weight + ' ' + parseInt(this.fontSize) + 'px ' + this.family


模拟器 没有问题

ios 真机 wx.loadFontFace loaded ok 但是字体就是没有变化

this.ctx.font = "notmal normal 18px xxxxxx"

回答关注问题邀请回答
收藏

3 个回答

  • Waymon丶魏
    Waymon丶魏
    发表于小程序端
    09-02

    @官方 @微信社区开放平台

    09-02
    有用
    回复
  • showms
    showms
    09-02

    代码贴出来看下

    https://developers.weixin.qq.com/miniprogram/dev/devtools/minicode.html

    09-02
    有用
    回复 1
    • Waymon丶魏
      Waymon丶魏
      发表于小程序端
      09-02

      components 里面封装的canvas 使用canvas-i’d的,先渲染正常的文字,再去字体列表里面loadFantFace字体,成功之后传入family到插件里,ios加载成功了,但是字体没反应

      09-02
      回复
  • 启年
    启年
    09-01

    是不是字体加载的时机有问题,检查一下

    提升你服务器的带宽,或者把字体包放到oss 或者其他的云存储,提升字体包加载速度

    字体没加载好的时候, canvas 就绘制了

    09-01
    有用
    回复 1
    • Waymon丶魏
      Waymon丶魏
      发表于小程序端
      09-02

      感谢老哥回复,先绘制普通的文字,loadFontFace 成功之后才在ctx.font 里面改变文字的family

      09-02
      回复
登录 后发表内容