KonghaYao / cn-font-split

划时代的字体切割工具,CJK与任何字符!支持 otf、ttf、woff2 字体多线程切割,完美地细颗粒度地进行包大小控制。A revolutionary font subetter that supports CJK and any characters! It enables multi-threaded subset of otf, ttf, and woff2 fonts, allowing for precise control over package size.
https://chinese-font.netlify.app/
Apache License 2.0
442 stars 15 forks source link

添加对 Webpack / Vite 的支持 #51

Closed PrinOrange closed 3 months ago

PrinOrange commented 6 months ago

有没有想过把这个库集成到 Webpack 和 Vite 中做成插件,允许构建时处理前端项目中的字体文件 🤔 类似于 Next.js 中对本地字体的优化

KonghaYao commented 6 months ago
  1. 如果用到了 cn-font-split,一般都是持久化字体包到 CDN 上了,通过主项目直接链接 CSS 文件。
  2. 构建中处理的话,每次构建都要执行字体切割,像是在服务端持续集成就会比较吃力,单轮如果要跑测试的话,时间会更久。不如字体构建一次放置到 CDN 中,多个项目也可以同时使用。所以没有加入构建框架的插件。
  3. 但是实现是可以的,通过解析源代码获取入口文件路径,塞进 cn-font-split 即可输出 css 文件地址,插入到 html 中即可。
KonghaYao commented 3 months ago

https://www.npmjs.com/package/vite-plugin-font https://github.com/KonghaYao/cn-font-split/blob/ts/packages/vite/README_zh.md vite-plugin-font 已经开发完毕了,但是我还没有进行实战测试嘞,估计晚些时候,在其他的项目里面会试试。 @PrinOrange