cn-font-split
Version:
划时代的字体切割工具,CJK与任何字符!支持 otf、ttf、woff2 字体多线程切割,完美地细颗粒度地进行包大小控制。A revolutionary font subetter that supports CJK and any characters! It enables multi-threaded subset of otf, ttf, and woff2 fonts, allowing for precise control over package size.
1 lines • 3.94 kB
Source Map (JSON)
{"version":3,"file":"proto.mjs","sources":["../../src/gen/proto.ts"],"sourcesContent":["/* automatically generated by proto-to-cli */\nimport { toInt, toFloat, toFile, toBoolean, HandleRepeated } from \"proto-to-cli/dist/parser.js\";\nimport { Command } from 'commander';\nconst run = new Command(\"run\");\nrun.requiredOption('-i,--input <bytes>',\"ttf/woff2 文件的 buffer\",toFile)\n .option('-o,--outDir <string>',\"切割后放置文件的文件夹\")\n .option('--css.fontFamily <string>',\"字体家族名称\")\n .option('--css.fontWeight <string>',\"字体粗细\")\n .option('--css.fontStyle <string>',\"字体样式\")\n .option('--css.fontDisplay <string>',\"字体显示方式\")\n .option('--css.localFamily <string>',\"本地字体家族名称\")\n .option('--polyfill.name <string>',\"名称\")\n .option('--polyfill.format <string>',\"格式\")\n .option('--css.commentBase <bool>',\"基础注释\",toBoolean)\n .option('--css.commentNameTable <bool>',\"名称表注释\",toBoolean)\n .option('--css.commentUnicodes <bool>',\"Unicode 注释\",toBoolean)\n .option('--css.compress <bool>',\"是否压缩\",toBoolean)\n .option('--css.fileName <string>',\"文件名\")\n .option('-t,--targetType <string>',\"目标类型\")\n .option('-s,--subsets <bytes>',\"子集\",HandleRepeated(toFile))\n .option('-c,--chunkSize <int32>',\"包大小\",toInt)\n .option('--chunkSizeTolerance <float>',\"包大小容差\",toFloat)\n .option('-m,--maxAllowSubsetsCount <int32>',\"最大允许子集数量\",toInt)\n .option('--testHtml <bool>',\"是否生成测试 HTML\",toBoolean)\n .option('-r,--reporter <bool>',\"是否生成 reporter.bin\",toBoolean)\n .option('--previewImage.text <string>',\"会显示在 svg 中的文本\")\n .option('--previewImage.name <string>',\"svg 文件的名称\")\n .option('--renameOutputFont <string>',\"重命名输出字体\")\n .option('-b,--buildMode <string>',\"TODO 构建模式\")\n .option('-l,--languageAreas <bool>',\"是否进行语言区域优化\",toBoolean)\n .option('--multiThreads <bool>',\"TODO 是否使用多线程\",toBoolean)\n .option('-f,--fontFeature <bool>',\"是否启用字体特性\",toBoolean)\n .option('--reduceMins <bool>',\"是否减少最小分包,\",toBoolean)\n .option('-a,--autoSubset <bool>',\"是否自动子集化\",toBoolean)\n .option('--subsetRemainChars <bool>',\"是否自动添加没有声明的字符\",toBoolean)\nexport const getCliParams = (argv: string[], extraFn?: (cm: Command, run: Command) => void) => {\n const program = new Command();\n program.addCommand(run, { isDefault: true });\n extraFn && extraFn(program, run);\n return program.parse(argv);\n};"],"names":["run","Command","toFile","toBoolean","HandleRepeated","toInt","toFloat","getCliParams","argv","extraFn","program"],"mappings":";;AAGA,MAAMA,IAAM,IAAIC,EAAQ,KAAK;AAC7BD,EAAI,eAAe,sBAAqB,wBAAuBE,CAAM,EAChE,OAAO,wBAAuB,aAAa,EAC3C,OAAO,6BAA4B,QAAQ,EAC3C,OAAO,6BAA4B,MAAM,EACzC,OAAO,4BAA2B,MAAM,EACxC,OAAO,8BAA6B,QAAQ,EAC5C,OAAO,8BAA6B,UAAU,EAC9C,OAAO,4BAA2B,IAAI,EACtC,OAAO,8BAA6B,IAAI,EACxC,OAAO,4BAA2B,QAAOC,CAAS,EAClD,OAAO,iCAAgC,SAAQA,CAAS,EACxD,OAAO,gCAA+B,cAAaA,CAAS,EAC5D,OAAO,yBAAwB,QAAOA,CAAS,EAC/C,OAAO,2BAA0B,KAAK,EACtC,OAAO,4BAA2B,MAAM,EACxC,OAAO,wBAAuB,MAAKC,EAAeF,CAAM,CAAC,EACzD,OAAO,0BAAyB,OAAMG,CAAK,EAC3C,OAAO,gCAA+B,SAAQC,CAAO,EACrD,OAAO,qCAAoC,YAAWD,CAAK,EAC3D,OAAO,qBAAoB,eAAcF,CAAS,EAClD,OAAO,wBAAuB,qBAAoBA,CAAS,EAC3D,OAAO,gCAA+B,eAAe,EACrD,OAAO,gCAA+B,WAAW,EACjD,OAAO,+BAA8B,SAAS,EAC9C,OAAO,2BAA0B,WAAW,EAC5C,OAAO,6BAA4B,cAAaA,CAAS,EACzD,OAAO,yBAAwB,gBAAeA,CAAS,EACvD,OAAO,2BAA0B,YAAWA,CAAS,EACrD,OAAO,uBAAsB,aAAYA,CAAS,EAClD,OAAO,0BAAyB,WAAUA,CAAS,EACnD,OAAO,8BAA6B,iBAAgBA,CAAS;AACrD,MAAAI,IAAe,CAACC,GAAgBC,MAAkD;AACrF,QAAAC,IAAU,IAAIT,EAAQ;AAC5B,SAAAS,EAAQ,WAAWV,GAAK,EAAE,WAAW,IAAM,GAChCS,KAAAA,EAAQC,GAASV,CAAG,GACxBU,EAAQ,MAAMF,CAAI;AAC7B;"}