在微信小程序中引用网络字体有两种写法。

在css文件中引用

@font-face {
  font-family: 'hanyichengxingjian';
  src: url('https://xxx.com/xxx/xxx/hanyichengxingjian.ttf');
}

使用 wx.loadFontFace 加载字体

wx.loadFontFace({
  family: 'hanyichengxingjian',
  source: 'url("https://xxx.com/xxx/xxx/hanyichengxingjian.ttf")',
})

微信原文介绍链接https://developers.weixin.qq.com/miniprogram/dev/api/ui/font/wx.loadFontFace.html
wx.loadFontFace引入第三方字体 苹果手机引用成功 安卓手机和开发工具引用失败
https://developers.weixin.qq.com/community/develop/doc/0004869438c31065a1cca30d456800

wx.loadFontFace(Object object)
基础库 2.1.0 开始支持,低版本需做兼容处理。

以 Promise 风格 调用:支持

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

微信 Windows 版:支持

微信 Mac 版:支持

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

注意:

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

服务器字体库上传成功后,小程序无法调用,nginx跳转,报跨域,需要nginx配置
Access-Control-Allow-Origin:配置 Access-Control-Allow-Origin 为 * 表示服务器可以接受所有的请求源(Origin),即接受所有跨域的请求;也可以指定一个确定的URL。
跨域详解,觉得不错的csdn有兴趣可以看看另一位博主:https://blog.csdn.net/huang714/article/details/122173438

server {
            listen       80;
            server_name  xxxx.com;
            index index.jsp index.html index.html index.shtml;
                location / {
                                proxy_pass http://127.0.0.1:8080/;
                                #Proxy Settings;
                                #proxy_redirect off;
                                add_header Access-Control-Allow-Origin *;#跨域配置
                                proxy_set_header Host $host;
                                proxy_set_header X-Real-IP $remote_addr;
                                proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

                        }
    }
Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐