#字体 #figma #系统

bin+lib libfonthelper

读取传递的目录中的字体,并返回用于Figma Font Helper的字体对象

22个版本

使用旧的Rust 2015

0.3.9 2023年4月4日
0.3.5 2023年3月22日
0.3.4 2021年10月11日
0.2.9-beta.02020年9月6日
0.2.2 2019年9月5日

文件系统中排名第320

Download history 1/week @ 2024-05-21

每月下载量188

GPL-2.0-only

11KB
72

描述

此模块通过掩码(\.(tt[fc]|otf|pfb))查找并合并传递的目录中的所有字体。并返回下一个结构的IFonts字体对象

interface IFontsFigmaItem {
	postscript: string;
	family: string;
	id: string;
	style?: string;
	weight?: number;
	stretch?: number;
	italic?: boolean;
}

interface IFonts {
	[path: string]: Array<IFontsFigmaItem>
}

示例

{ '/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 } ] }

用法

依赖项

~2.4–3.5MB
~58K SLoC