UNPKG

svgtofont

Version:

Converts SVG to TTF/EOT/WOFF/WOFF2/SVG format fonts.

40 lines (39 loc) 1.19 kB
import { type CheerioAPI, type Cheerio } from 'cheerio'; import type { AnyNode } from 'domhandler'; export interface ColorGroup { color: string; elements: string[]; } export interface SvgAnalysis { isMulticolor: boolean; colorGroups: ColorGroup[]; viewBox: string; width: string; height: string; } export interface LayerSvg { layerIndex: number; color: string; svgContent: string; } export interface MulticolorLayerInfo { layerIndex: number; glyphName: string; unicode: string; color: string; encodedCode: number; } export interface MulticolorIconInfo { originalName: string; layerCount: number; layers: MulticolorLayerInfo[]; } export type MulticolorMap = Record<string, MulticolorIconInfo>; export interface CreateSVGResult { unicodeObject: Record<string, string>; multicolorMap: MulticolorMap; } export declare function normalizeColor(color: string): string; export declare function resolveEffectiveFill($: CheerioAPI, $el: Cheerio<AnyNode>): string; export declare function analyzeSvgColors(svgContent: string): SvgAnalysis; export declare function generateLayerSvgs(analysis: SvgAnalysis): LayerSvg[];