UNPKG

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.

3 lines (2 loc) 980 B
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("bun:ffi"),i=require("path"),c=require("../load.js"),p=require("../node/isMusl.js"),n=require("../createAPI.js"),l=require("../decodeReporter.js"),u=require("../gen/index.js");let s=process.env.CN_FONT_SPLIT_BIN;s||(s=i.resolve(__dirname,"../"+c.getBinName(c.matchPlatform(process.platform,process.arch,p.isMusl))));const{symbols:{font_split:d},close:y}=e.dlopen(s,{font_split:{args:[e.FFIType.ptr,e.FFIType.usize,e.FFIType.callback],returns:e.FFIType.void}}),F=t=>new e.JSCallback((o,r)=>{const a=new Uint8Array(e.toArrayBuffer(o,0,Number(r)).slice(),0,Number(r));t(a)},{returns:e.FFIType.void,args:[e.FFIType.ptr,e.FFIType.usize]}).ptr,f=n.createAPI((t,o,r)=>d(e.ptr(t),o,r),F);exports.createAPI=n.createAPI;exports.decodeReporter=l.decodeReporter;Object.defineProperty(exports,"proto",{enumerable:!0,get:()=>u.api_interface});exports.fontSplit=f; //# sourceMappingURL=index.js.map