vue.js

关注公众号 jb51net

关闭
首页 > 网络编程 > JavaScript > javascript类库 > vue.js > Vue使用自定义字体

在Vue项目中使用自定义字体的操作步骤

作者:吹水一流

在项目中使用自定义字体可以提升页面的视觉效果,并确保在不同设备上的一致性,文中通过代码示例给出了具体的操作步骤,对大家的学习或工作有一定的帮助,需要的朋友可以参考下

适用场景

解决问题

下载字体文件

字体格式比较

为什么选择 OTF

我们选择 .otf 格式,因为它支持高级排版功能,兼容性好,适合多种使用场景。虽然 WOFFWOFF2 在网页加载性能上更优,但 .otf 提供了更丰富的排版特性,适合需要高质量排版的项目。

将下载的 .otf 文件放入 src/assets/fonts/ 目录中。

配置 vue.config.js

确保在 vue.config.js 中配置文件加载规则,以正确处理字体文件:

module.exports = {
  chainWebpack: config => {
    config.module
      .rule('fonts')
      .test(/\.(woff2?|eot|ttf|otf)(\?.*)?$/i)
      .use('file-loader')
      .loader('file-loader')
      .options({
        name: 'fonts/[name].[hash:8].[ext]'
      });
  }
};

创建全局 CSS 文件

在 src/assets/styles/ 目录中创建 fonts.css,引入所需的字体:

@font-face {
  font-family: 'NotoSansCJK';
  src: url('@/assets/fonts/NotoSansCJK-Regular-1.otf') format('opentype');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'NotoSansCJK';
  src: url('@/assets/fonts/NotoSansCJK-Bold-6.otf') format('opentype');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

body {
  font-family: 'NotoSansCJK', sans-serif;
}

在 main.js 中引入全局 CSS 文件

在 src/main.js 中添加以下代码:

import Vue from 'vue';
import App from './App.vue';
import router from './router';
import store from './store';
import '@/assets/styles/fonts.css';  // 引入全局字体样式

Vue.config.productionTip = false;

new Vue({
  router,
  store,
  render: h => h(App)
}).$mount('#app');

在项目中使用字体

在你的组件中,通过指定 font-family 和 font-weight 使用不同的字重:

<template>
  <div>
    <h1 style="font-weight: 700;">加粗标题</h1>
    <p style="font-weight: 400;">普通文本</p>
  </div>
</template>

优化建议

npm install font-spider -g
font-spider your-font-file.otf

结论

通过以上步骤,可以在 Vue 项目中高效地引入和使用自定义字体。这不仅提升了用户体验,还通过选择性加载和优化技术减少了页面加载时间,确保项目在不同设备上都能呈现一致的视觉效果。

以上就是在Vue项目中使用自定义字体的操作步骤的详细内容,更多关于Vue使用自定义字体的资料请关注脚本之家其它相关文章!

您可能感兴趣的文章:
阅读全文