跳到主要内容
版本:3.x

Taro.loadFontFace(option)

动态加载网络字体。文件地址需为下载类型。iOS 仅支持 https 格式文件地址。

注意:

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

支持情况:

支付宝小程序: source 地址格式为 url('https://...'),而不是单纯 URL 地址

H5: 不支持 global (默认全局加载)

参考文档

类型

(option: Option) => Promise<CallbackResult>

参数

参数类型
optionOption

Option

参数类型默认值必填说明
globalbooleanfalse是否全局生效
familystring定义的字体名称
sourcestring字体资源的地址。建议格式为 TTF 和 WOFF,WOFF2 在低版本的 iOS 上会不兼容。
descDescOption可选的字体描述符
success(res: CallbackResult) => void接口调用成功的回调函数
fail(res: CallbackResult) => void接口调用失败的回调函数
complete(res: CallbackResult) => void接口调用结束的回调函数(调用成功、失败都会执行)

CallbackResult

参数类型说明
statusstring加载字体结果

DescOption

可选的字体描述符

参数类型必填说明
ascentOverridestring
API 支持度: h5
descentOverridestring
API 支持度: h5
featureSettingsstring
API 支持度: h5
lineGapOverridestring
API 支持度: h5
stretchstring
API 支持度: h5
stylestring字体样式,可选值为 normal / italic / oblique
unicodeRangestring
API 支持度: h5
variantstring设置小型大写字母的字体显示文本,可选值为 normal / small-caps / inherit
variationSettingsstring
API 支持度: h5
weightstring字体粗细,可选值为 normal / bold / 100 / 200../ 900

示例代码

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