https://github.com/Figma-Linux/libfonthelper
https://github.com/Figma-Linux/libfonthelper
Last synced: 4 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/Figma-Linux/libfonthelper
- Owner: Figma-Linux
- License: gpl-2.0
- Created: 2019-08-23T09:15:03.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2023-04-03T20:13:08.000Z (almost 3 years ago)
- Last Synced: 2025-01-16T14:47:22.002Z (about 1 year ago)
- Language: Rust
- Size: 28.3 KB
- Stars: 2
- Watchers: 3
- Forks: 1
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Description
This module find (by mask: \\.(tt[fc]|otf|pfb)) and combine all fonts from the passed directories.
And returns IFonts object of fonts of next structure:
```typescript
interface IFontsFigmaItem {
postscript: string;
family: string;
id: string;
style?: string;
weight?: number;
stretch?: number;
italic?: boolean;
}
interface IFonts {
[path: string]: Array
}
```
Example:
```javascript
{ '/usr/share/fonts/opentype/stix/STIXVariants-Bold.otf':
[ { postscript: 'STIXVariants-Bold',
family: 'STIXVariants',
id: 'STIXVariants',
style: 'Bold',
weight: 400,
stretch: 5,
italic: false } ],
'/usr/share/fonts/opentype/stix/STIXIntegralsUpSm-Bold.otf':
[ { postscript: 'STIXIntegralsUpSm-Bold',
family: 'STIXIntegralsUpSm',
id: 'STIXIntegralsUpSm',
style: 'Bold',
weight: 400,
stretch: 5,
italic: false } ],
'/usr/share/fonts/opentype/stix/STIXNonUnicode-Regular.otf':
[ { postscript: 'STIXNonUnicode-Regular',
family: 'STIXNonUnicode',
id: 'STIXNonUnicode',
style: 'Regular',
weight: 400,
stretch: 5,
italic: false } ],
'/usr/share/fonts/opentype/stix/STIXSizeFourSym-Regular.otf':
[ { postscript: 'STIXSizeFourSym-Regular',
family: 'STIXSizeFourSym',
id: 'STIXSizeFourSym',
style: 'Regular',
weight: 400,
stretch: 5,
italic: false } ],
'/usr/share/fonts/opentype/noto/NotoSansCJK-DemiLight.ttc':
[ { postscript: 'NotoSansCJKjp-DemiLight',
family: 'Noto Sans CJK JP',
id: 'Noto Sans CJK JP',
style: 'DemiLight',
weight: 400,
stretch: 5,
italic: false },
{ postscript: 'NotoSansCJKkr-DemiLight',
family: 'Noto Sans CJK KR',
id: 'Noto Sans CJK KR',
style: 'DemiLight',
weight: 400,
stretch: 5,
italic: false },
{ postscript: 'NotoSansCJKsc-DemiLight',
family: 'Noto Sans CJK SC',
id: 'Noto Sans CJK SC',
style: 'DemiLight',
weight: 400,
stretch: 5,
italic: false },
{ postscript: 'NotoSansCJKtc-DemiLight',
family: 'Noto Sans CJK TC',
id: 'Noto Sans CJK TC',
style: 'DemiLight',
weight: 400,
stretch: 5,
italic: false } ],
'/usr/share/fonts/opentype/noto/NotoSansCJK-Thin.ttc':
[ { postscript: 'NotoSansCJKjp-Thin',
family: 'Noto Sans CJK JP',
id: 'Noto Sans CJK JP',
style: 'Thin',
weight: 400,
stretch: 5,
italic: false },
{ postscript: 'NotoSansCJKkr-Thin',
family: 'Noto Sans CJK KR',
id: 'Noto Sans CJK KR',
style: 'Thin',
weight: 400,
stretch: 5,
italic: false },
{ postscript: 'NotoSansCJKsc-Thin',
family: 'Noto Sans CJK SC',
id: 'Noto Sans CJK SC',
style: 'Thin',
weight: 400,
stretch: 5,
italic: false },
{ postscript: 'NotoSansCJKtc-Thin',
family: 'Noto Sans CJK TC',
id: 'Noto Sans CJK TC',
style: 'Thin',
weight: 400,
stretch: 5,
italic: false } ] }
```
# Usage