阅读(337) (1)

微信小程序API 字体

2020-07-24 13:48:29 更新

wx.loadFontFace(Object object)

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

动态加载网络字体,文件地址需为下载类型。'2.10.0'起支持全局生效,需在 app.js 中调用。

注意:

  1. 字体文件返回的 contet-type 参考 font,格式不正确时会解析失败。
  2. 字体链接必须是https(ios不支持http)
  3. 字体链接必须是同源下的,或开启了cors支持,小程序的域名是servicewechat.com
  4. canvas等原生组件不支持使用接口添加的字体
  5. 工具里提示 Faild to load font可以忽略
  6. '2.10.0' 以前仅在调用页面生效。

参数

Object object

属性类型默认值必填说明最低版本
globalbooleanfalse是否全局生效2.10.0
familystring定义的字体名称
sourcestring字体资源的地址。建议格式为 TTF 和 WOFF,WOFF2 在低版本的iOS上会不兼容。
descObject可选的字体描述符
successfunction接口调用成功的回调函数
failfunction接口调用失败的回调函数
completefunction接口调用结束的回调函数(调用成功、失败都会执行)

object.desc 的结构

属性类型默认值必填说明
stylestring'normal'字体样式,可选值为 normal / italic / oblique
weightstring'normal'字体粗细,可选值为 normal / bold / 100 / 200../ 900
variantstring'normal'设置小型大写字母的字体显示文本,可选值为 normal / small-caps / inherit

object.success 回调函数

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

object.fail 回调函数

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

object.complete 回调函数

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

示例代码

在开发者工具中预览效果

wx.loadFontFace({
  family: 'Bitstream Vera Serif Bold',
  source: 'url("https://sungd.github.io/Pacifico.ttf")',
  success: console.log
})