# cwfont
**Repository Path**: skymzjdy/cwfont
## Basic Information
- **Project Name**: cwfont
- **Description**: Vector font generation tool(svg files convert to iconfont)
- **Primary Language**: TypeScript
- **License**: MIT
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 0
- **Created**: 2022-09-09
- **Last Updated**: 2022-09-09
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## 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) 2019-present, Chowa