我是一个通过 svg 文件生成字体文件的包,对比其他同类型的包,我们的包存在以下优势:
用了以后会变帅;- 能不生成字体文件而仅产出每个 svg 压缩过后的 d 属性;
- 能仅通过图标的 d 属性生成字体。
安装 (通过 npm)
$ npm i --save iconfont-builder
var builder = require('iconfont-builder');
var path = require('path');
var options = {
// 图标信息
icons: [
{
name: 'www-font-o',
file: 'abc.svg',
codepoint: 61441
}
],
// 图标文件夹
src: path.join(__dirname, 'src'),
// 生成字体名称
fontName: 'iconfont',
// 整体偏移量
descent: 0,
// 字体生成位置
dest: path.join(__dirname, 'dest')
};
builder(options)
.then().catch();
类型: Array<Object>
例子:
{
name: 'www-font-o', // 图标样式名
file: 'abc.svg', // 图标文件名
codepoint: 61441 // 图标 unicode,这里是十进制,也可以用16进制
}
类型: Boolean
默认值: true
这个参数如果设定为 true
表示生成四个字体文件,如果设定为 false
则进行以下操作:
- 对所有 svg 文件进行压缩(最终压缩为一个只有 d 属性的 path)
- 返回每个 svg 对应 path 的 d 属性
- 不生成字体文件
类型: Boolean
默认值: true
这个参数表示是否通过 svg 文件来生成字体,如果为 false
,则 icons
数组里的每个图标对象都必须要有 d 属性。
类型: String
默认值: 'iconfont'
生成的字体文件名。
类型: Number
默认值: 0xF000
图标开始编码,可以是10进制或16进制。当 options
参数里没有 icons
数组的时候,将会使用这一属性作为字体开始编码,之后的字体编码将依次加一。
类型: String
默认值: '.'
svg 文件所处的文件夹。
类型: String
生成字体的目标文件夹。
类型: Number
默认值: 0
字体偏移量,可以用来修正整体字体偏移。