前段时间更换博客字体时遇到了加载缓慢的问题,尝试将字体文件放在本地服务器,但发现打开博客时需要五六秒,体验不佳。最近发现了中文网字计划,通过在线切割字体文件为多个小型静态分包,并部署在云端,使用CSS特性 unicode-range和优化字符分包区间,成功减少字体加载时间,该网站为大家提供了两种方法,大家选择适合自己的即可。以下是使用方法:

字体效果
简单图床 - EasyImage
简单图床 - EasyImage


网址:中文网字计划

方案一、使用中文网字计划的现成字体(目前有27种字体)
1. 选择字体
1.1.进入中文网字计划,字体列表->选择所需字体
简单图床 - EasyImage->复制字体cdn链接
image

2. 关联字体CSS
2.1.找到头文件 header.php(typecho的头标签一般在/usr/theme/使用的主题目录下,名为header.php)。对于handsome主题,头标签路径为/usr/theme/handsome/component/header.php
image
2.2.在<head>标签下粘贴复制的cdn链接
image

3. 自定义CSS
3.1. 找到后台的自定义CSS,规定字体使用范围。若全局使用某个字体,可以使用以下规则:

body {
font-family: 'FontsName';
font-weight: '400';
}

3.2. 如果想让特定区域使用特定字体,使用开发者工具查看该区域类名,并使用如下规则:

.类名 {
font-family: 'FontsName';
font-weight: '400';
}

简单图床 - EasyImage

方案二、自行部署 CDN 字体
1. 在线分包(中文网字计划也提供了字体分包插件,有需要的可以下载并且部署)
1.1. 上传字体文件并进行在线分包,完成分包后解压字体文件。
简单图床 - EasyImage

2. 部署到ImageKit OSS
2.1. 完成注册。
2.2. 选择Folder Upload上传解压好的字体包image并复制 result.css 路径。
简单图床 - EasyImage

3. 使用 Nginx 反代 ImageKit 源
因为在 LightCDN 的新策略中,不能同时存在相同的来源网站,所以我们可以反代一下ImageKit
3.1. 将域名解析到 VPS 上。
image3.2. 配置 Nginx 相关文件,proxy_pass填写 http://ik.imagekit.io
简单图床 - EasyImage

4. 使用 LightCDN
4.1. 完成注册。
4.2. 配置 CDN,将 来源 填写刚刚解析的域名,CDN加速域名填写任意域名即可。
简单图床 - EasyImage4.3. 要使用的 CDN 链接为:LightCDN 分配的 CDN + ImageKit 中的 result.css 路径,无需加上 ik.imagekit.io(result.css后面的值可以删除)。例如:https://814356546.cdn/jizhu/fonts/result.css
简单图床 - EasyImage4.4. 后续步骤与方案一中的操作一致,只需在 header.php 中接入 自己CDN 链接,并在自定义 CSS 中设置相关属性(字体名字在result.css中查看)。


相关网站

中文网字计划:https://chinese-font.netlify.app
ImageKit:https://imagekit.io
LightCdn:https://www.lightcdn.com

最后修改:2024 年 03 月 20 日
如果觉得我的文章对你有用,请随意赞赏