https://github.com/chowa/cwfont
Vector font generation tool(svg files convert to iconfont)
https://github.com/chowa/cwfont
eot iconfont iconfont-build iconfont-cli iconfonts svg ttf typescript woff woff2
Last synced: 10 months ago
JSON representation
Vector font generation tool(svg files convert to iconfont)
- Host: GitHub
- URL: https://github.com/chowa/cwfont
- Owner: chowa
- License: mit
- Created: 2020-01-07T16:48:32.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2023-02-04T15:30:01.000Z (over 3 years ago)
- Last Synced: 2025-08-09T04:18:48.105Z (10 months ago)
- Topics: eot, iconfont, iconfont-build, iconfont-cli, iconfonts, svg, ttf, typescript, woff, woff2
- Language: TypeScript
- Homepage:
- Size: 749 KB
- Stars: 5
- Watchers: 2
- Forks: 1
- Open Issues: 3
-
Metadata Files:
- Readme: README.MD
- License: LICENSE
Awesome Lists containing this project
README
# cwfont
Vector font generation tool(svg files convert to iconfont)
[](https://travis-ci.org/chowa/cwfont)
[](https://www.npmjs.com/package/cwfont)
[](https://www.npmjs.com/package/cwfont)
[](https://opensource.org/licenses/MIT)
## Install
```
npm i cwfont -g
```
## Cli Usage
### Create
```
cwfont create
```
### Compile
```
cwfont compile
```
Modify `.cwfontrc`,Customize the configuration input and output directories, enable hash and exempt CSS modules, and view the specific configuration [options](#options). (You can use js/json/yaml/yml to write it)
### Preview
```
cwfont preview
```
## API
```js
const ChowaFont = require('cwfont');
```
### Generate font
```js
ChowaFont.generator({
// executive directory
cwd: 'xxx',
...options
});
```
## Options
```js
{
// compile options
compile: {
// compile syntax, optional CSS | SCSS | less
syntax: 'css',
// start value corresponding to font Unicode
startPoint: 51666,
// font name
fontName: 'chowa-iconfont',
// font file name
styleFileName: 'chowa-iconfont',
// font selector, {glyph}} must be preceded by a separator, such as: -
selector: '.cw-icon-{{glyph}}'
},
// exempt CSS module
global: false,
// using stylelint to format output code
stylelint?: boolean;
// has options
hash: {
// font file with hash
font: false,
// style file with hash
style: false,
// length of hash
len: 8
},
// create preview file
preview: true,
// format specific configuration view https://prettier.io/docs/en/options.html
format: {
printWidth: 120,
tabWidth: 4,
useTabs: false,
semi: true,
endOfLine: 'lf'
},
// input options
input: {
// svg file directory
svgsDir: './svg-icons',
// style file template
styleTpl: null,
// preview file template
previewTpl: null
},
// output options
output: {
// font file saving directory
font: './',
// style file saving directory
style: './',
// preview file saving directory
preview: './'
}
}
```
## Customize template
* [style template](src/template/style.tpl)
* [preview template](src/template/preview.tpl)
## Attention
* Svg file names should be free of spaces and special symbols
* The 'selector' option '{{glyph}}' in the configuration file must be preceded by a separator
* Drawing SVG graph with single path
## License
[MIT](http://opensource.org/licenses/MIT)
Copyright (c) 2020-present, chowa.cn