font-spider-plus,字体压缩插件使用笔记
font-spider-plus使用笔记, fsp是一个腾讯的大佬改版后的font-soider
主要思路是 采集线上网页使用到的字体,从字体文件中分离出来,完成大幅度压缩,
1,npm i font-spider-plus -g
2,css中定义好font-face (ttf需要存在),其他配好可自动生成,不配则不会,
有个坑,如果是webpack打包的stylus,sass等,配上不存在的问题会抱错,
而且还有个坑,可能是压缩的问题,fontface放在最前面 莫名其妙消息了一行,我放在了后面一行
3,需要压缩的本地webfont 比如 fsp *.html,home/*.htm
4,执行fsp init 生成配置文件fspconfig.js
localPath: "../font", 是本地路径,把要需要压缩的字体文件放在里面,待会会生成压缩好的文件夹
onlintpath: "../font", 是线上的地址,比如开发环境里面的字体路径就是他
url: "http://127.0.0.1:5199/play.html" 是线上的网址,会根据请求和css收集要压缩的字体文件和文字
最后执行,fsp run
注意: 是到线上取到要压缩的字体 和 用到的文字 在本地的字体文件进行压缩,
特别是路径要注意,本地的,他会生成一个fsp的虚拟文件,需要上一层 ../ 再取要的路径
建议:开发完成后,在本地开发环境作为线上,拿到压缩好的字体文件,然后替换字体文件,编译后放服务器
可在任意目录下完成操作
ps:
1,我修改了 本地modules的备份文件夹的名字,
2,weboack,字体的url-loader建议名字不用hash,用原来的 '[name].[ext]',然后才能和本地的原文件对得上
font-spider-plus,字体压缩插件使用笔记的更多相关文章
- Linux文件压缩与打包笔记
linux 文件压缩与打包笔记 压缩原理:通过算法去掉空位,1Bytes=8bits , 可能存储的真正有用的数据并没有占满一个字节空间 , 还有就是可能有重复的数据,通过某种算法从这些方面进行压缩处 ...
- Font Awesome图标字体应用及相关
作为web开发者,难免要经常要用到些小图标,给自己web增添几分活力和多样性.像这些: 而Font Awesome刚好为我们提供了这些.到目前为止,Font Awesome提供了有500多个可缩放的的 ...
- CSS自定义字体的实现,前端实现字体压缩
CSS中使用自定义字体,首先需要下载你需要的字体ttf或者otf文件 这里推荐一个网站:http://www.zitixiazai.org/ /********css中********/ @font- ...
- 中文字体压缩器-解决css引入的字体太大的问题
字蛛是一个中文字体压缩器 官方网站:http://font-spider.org/index.html 用于解决页面引入的css字体过大的问题 使用方法: npm i -g font-spider 在 ...
- 如何应用Font Awesome矢量字体图标
Font Awesome 是一套专门为 Twitter Boostrap 设计的图标字体库.这套图标字体集几乎囊括了网页中可能用到的所有图标,除了包括 Twitter Boostrap 的默认图标外, ...
- tool 使用font-spider解决字体压缩问题
开发页面时经常需要使用特殊字体,一个.ttf文件动则几M,字体文件需要优化 http://font-spider.org/ 安装好node环境后 1.全局安装font-spider npm insta ...
- Django 的css和js压缩插件:django_compressor
今天尝试了django_conpressor,一个在django框架中压缩css和js的插件,灰常有用 我把它加载在我的base的HTML template中,原来未经压缩的css和js是: < ...
- [.NET源码学习]实例化Font,遭遇字体不存在的情况。
实例化Font类时,当传入参数为不存在或未安装的字体时,Windows系统会用Microsoft Sans Serif字体替代该字体. Msdn: "For more information ...
- Font Awesome图标字体库(2015年05月25日)
Font Awesome是一款非常棒的字体图标工具,给个地址,具体的自已慢慢去体会,只能帮你到这儿了...... http://fortawesome.github.io/Font-Awesome/ ...
随机推荐
- Splunk 简单笔记
Splunk Notes source="c:\logs\abc.log" | rex field=url "(?<=\/)(?<ApiId>\w+?) ...
- java操作对比两个字符串,将差异数据提取出来
记录瞬间 在实际的工作中,需要解决生成两次字符串结果进行对比的问题,将存在差异的字符串直接给出来. 当然,前提是需要将对比的两次结果,进行前期处理 比如: a_str = "@com/ene ...
- 【错误总结1:unity StartCoroutine 报 NullReferenceException 错误】
今天在一个项目中,写了一个单例的全局类,该类的作用是使用协程加载场景.但在StartCoroutine 这一步报了NullReferenceException 的错.仔细分析和搜索之后,得到错误原因. ...
- ava新手入门详细介绍
Java总有它的千般好处使你选择它,但这些随便翻翻书或在网上逛一圈就能找到答案.在本文中,笔者把自己学习Java的一些切身体会和过程写出来,供初学者做个参考. 我在学习Java的过程中主要围绕以下几个 ...
- Java里面使用Date.compareTo比较时间
DateFormat dateFormat = DateFormat.getDateInstance(); Date oldTime = dateFormat.parse("2019-04- ...
- antd-design TextArea initialValue 不生效可能原因
<Form.Item label="展会介绍"> {getFieldDecorator('introduce', { initialValue:record.intro ...
- mysql,jdbc、连接池
show processlist; select * from information_schema.processlist; Command: The type of command the thr ...
- Linux的DNS配置3-多域
1.实验目的 现要求在两个局域网中分别搭建各自的DNS服务器,并通过相关设置,使得两个DNS服务器能相互解析 2.实验拓扑 3.实验分析 要使两个不同网络的DNS服务器能相互访问,需要额外假设一台DN ...
- 《视觉SLAM十四讲课后作业》第二讲
1.设线性⽅程 Ax = b,在 A 为⽅阵的前提下,请回答以下问题:1. 在什么条件下,x 有解且唯⼀? 非齐次线性方程在A的秩与[A|B]的秩相同时方程有解,当R(A)=R(A,B)=n时方程有唯 ...
- js时间相关
let date = new Date(); date.getYear(); //获取当前年份(2位) date.getFullYear(); //获取完整的年份(4位) date.getMonth( ...