Loading in local fonts with webpack 2 and the vue-cli

前端 未结 2 1350
[愿得一人]
[愿得一人] 2021-01-02 11:48

I\'m using the vue-cli webpack template and I\'m trying to load in local fonts in my project. I\'m having trouble getting the path to my fonts correct. How should my path lo

2条回答
  •  别那么骄傲
    2021-01-02 12:13

    I import my fonts this way:

    $font_path: '~@/assets/fonts/';
    
    // *********** //
    // SOURCE SANS //
    // ITALIC
    @font-face{
      font-family    : 'Source Sans Pro';
      src            : url($font_path +'SourceSansPro-Italic.eot'); /* IE9 Compat; Modes */
      src            : url($font_path +'SourceSansPro-Italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */ url($font_path +'SourceSansPro-Italic.woff2') format('woff2'), /* Modern Browsers */ url($font_path +'SourceSansPro-Italic.woff') format('woff'); /* Modern Browsers */
      font-style     : italic, oblique;
      font-weight    : 400;
      text-rendering : optimizeLegibility;
    }
    // REGULAR
    @font-face{
      font-family    : 'Source Sans Pro';
      src            : url($font_path +'SourceSansPro-Regular.eot'); /* IE9 Compat; Modes */
      src            : url($font_path +'SourceSansPro-Regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */ url($font_path +'SourceSansPro-Regular.woff2') format('woff2'), /* Modern Browsers */ url($font_path +'SourceSansPro-Regular.woff') format('woff'); /* Modern Browsers */
      font-style     : normal;
      font-weight    : 400;
      text-rendering : optimizeLegibility;
    }
    // SEMI BOLD
    @font-face{
      font-family    : 'Source Sans Pro';
      src            : url($font_path +'SourceSansPro-Semibold.eot'); /* IE9 Compat; Modes */
      src            : url($font_path +'SourceSansPro-Semibold.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */ url($font_path +'SourceSansPro-Semibold.woff2') format('woff2'), /* Modern Browsers */ url($font_path +'SourceSansPro-Semibold.woff') format('woff'); /* Modern Browsers */
      font-style     : normal;
      font-weight    : 600;
      text-rendering : optimizeLegibility;
    }
    // Use "font-family: $source_sans_pro" in your code.
    $source_sans_pro : 'Source Sans Pro', sans-serif;
    // [END] SOURCE SANS //
    // ***************** //
    

    All my fonts are located in src/assets/fonts/

    My webpack.base.conf file contains this loader:

     {
        test: /\.(woff2?|eot|ttf|otf)(\?.*)?$/,
        loader: 'url-loader',
        options: {
          limit: 10000,
          name: utils.assetsPath('fonts/[name].[hash:7].[ext]')
        }
      },
    

提交回复
热议问题