# wx.loadFontFace(Object object)

基础库 2.1.0 开始支持,低版本需做兼容处理

Promise 风格 调用:支持

小程序插件:支持,需要小程序基础库版本不低于 2.15.0

微信 Windows 版:支持

微信 Mac 版:支持

# 功能描述

动态加载网络字体。

# 参数

# Object object

属性 类型 默认值 必填 说明 最低版本
global boolean false 是否全局生效 2.10.0
family string 定义的字体名称
source string 字体资源的地址,可以为 https 链接或者 Data URL。
desc Object 可选的字体描述符
结构属性 类型 默认值 必填 说明
style string 'normal' 字体样式,可选值为 normal / italic / oblique
weight string 'normal' 字体粗细,可选值为 normal / bold / 100 / 200../ 900
variant string 'normal' 设置小型大写字母的字体显示文本,可选值为 normal / small-caps / inherit
scopes Array 字体作用范围,可选值为 webview / native / skyline,默认全选,设置 native 可在 Canvas 2D 下使用
success function 接口调用成功的回调函数
fail function 接口调用失败的回调函数
complete function 接口调用结束的回调函数(调用成功、失败都会执行)

# object.success 回调函数

# 参数
# Object res
属性 类型 说明
status string 加载字体结果

# object.fail 回调函数

# 参数
# Object res
属性 类型 说明
status string 加载字体结果

# object.complete 回调函数

# 参数
# Object res
属性 类型 说明
status string 加载字体结果

# 示例代码

在开发者工具中预览效果

wx.loadFontFace({
  family: 'Bitstream Vera Serif Bold',
  source: 'url("https://res.wx.qq.com/t/wx_fed/base/weixin_portal/res/static/font/33uDySX.ttf")',
  success: console.log
})

# Tips

  1. 字体链接需要是下载类型。
  2. 字体文件返回的 content-type 参考 font,格式不正确时会解析失败。
  3. 字体链接必须是 https(ios不支持http)。
  4. 建议格式为 TTF 和 WOFF,WOFF2 在低版本的iOS上会不兼容。
  5. 字体链接必须是同源下的,或开启了cors支持,小程序的域名是servicewechat.com
  6. 工具里提示 Faild to load font可以忽略
  7. 2.10.0 以前仅在调用页面生效。2.10.0 起支持全局生效,需在 app.js 中调用。
  8. 3.7.9 以前 scopes 默认值为 webview。3.7.9 起默认全选。
  9. 3.7.9 开始 source 支持传入 Data URL。