首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Webpack带url-加载器的内联字体

Webpack带url-加载器的内联字体
EN

Stack Overflow用户
提问于 2017-01-15 02:04:51
回答 1查看 7.2K关注 0票数 7

我试图将一些字体内联为base64 64编码的数据URI,但与Webpack的url加载器没有任何进展。这是很奇怪的,因为url-加载程序似乎只是为我的图像和svg文件做的。我的设置如下:

目录结构

代码语言:javascript
复制
root/
|-src/
|--assets/
|
|----fonts/
|      icon-fonts/
|        fontawesome.woff2
|
|----styles/
|      fonts.css
|
|--components/
|   main.component.js
|...

webpack.config.js

代码语言:javascript
复制
module: {
  loaders: [
    {
      test: /\.(jpg|png|svg|woff2)$/,
      exclude: /node_modules/,
      loader: 'url?limit=100000&name=[name]-[sha512:hash:base64:7].[ext]'
    },
  ]
}

fonts.css

代码语言:javascript
复制
@font-face {
  font-family: FontAwesome;
  font-weight: normal;
  font-style: normal;
  src: url('../fonts/icon-fonts/fontawesome.woff2') format('woff2');
}

main.component.js

代码语言:javascript
复制
import fonts from '../assets/styles/fonts.css'
import React from 'react'

export class App extends React.Component {
  ...
}

输出

EN

回答 1

Stack Overflow用户

发布于 2017-11-27 15:43:53

不确定url-加载程序是否能够内联字体,但我猜并非如此。为此,您可以使用base64 64-内联装载机

注意:

显示的示例不适用于我,因为它导出文件。

代码语言:javascript
复制
{
   test: /\.(jpe?g|png|ttf|eot|svg|woff(2)?)(\?[a-z0-9=&.]+)?$/,
   use: 'base64-inline-loader?limit=1000&name=[name].[ext]'
}

然而,当我将名字从规则中移除时,它就像一种魅力。

代码语言:javascript
复制
{
  test: /\.(jpe?g|png|ttf|eot|svg|woff(2)?)(\?[a-z0-9=&.]+)?$/,
  use: 'base64-inline-loader'
}
票数 8
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41657087

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档