1. 将ttf文件放到静态资源目录中,如public/fonts目录下。
  2. 在vue项目中的样式文件中定义@font-face规则,引用ttf文件:
@font-face {
  font-family: 'MyFont';
  src: url('/fonts/myfont.ttf') format('truetype');
  font-weight: normal;
  font-style: normal;
}

body {
  font-family: 'MyFont';
}
  1. 在vue.config.js中添加对ttf文件的处理,将其转换为base64编码的data URI,并使用url-loader插件:
module.exports = {
  // ...
  chainWebpack: config => {
    // 处理ttf文件
    config.module.rule('fonts')
      .test(/\.(ttf)(\?.*)?$/)
      .use('url-loader')
      .loader('url-loader')
      .options({
        limit: 10000, // 小于10KB的文件转为base64编码的data URI
        name: 'fonts/[name].[ext]'
      })
      .end()
  }
}
  1. 在vue项目中使用缓存的ttf文件时,可以直接引用定义好的@font-face规则,无需请求下载
如何在vue项目生产环境中使用缓存的ttf文件无需请求下载并使用font-face

原文地址: https://www.cveoy.top/t/topic/g8oc 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录