Commit Graph

  • 76e5417ab9
    Merge c55d89d7ad24e00356ac9c9a2981f3d3562b9081 into 5c118121ff2da8b11ce33099bb331ca5204fbb5a dependabot[bot] 2026-09-02 20:57:23 +00:00
  • c55d89d7ad
    chore(deps-dev): bump @xmldom/xmldom from 0.9.11 to 0.9.12 dependabot/npm_and_yarn/xmldom/xmldom-0.9.12 dependabot[bot] 2026-09-02 20:57:20 +00:00
  • 5c118121ff v1.14.0: GSUB/GPOS 共享 gidLookup 查找表 + remapGid 数组化 + WF2_NOTRANSFORM 实验开关 new 崮生(子虚) 2026-08-27 07:57:32 +08:00
  • cc792d27b0 fix: 更新字体输出格式为 ttf,优化加载性能 崮生(子虚) 2026-08-27 06:06:42 +08:00
  • 8e2c68e6f9 docs: uni-webfont 补 README/LICENSE;依赖改 npm 语义版本(webfont-sdk ^0.2.1) 崮生(子虚) 2026-08-16 15:10:08 +08:00
  • 67b29487be chore: dist-bundle 加入 gitignore 并移除误提交的构建中间产物(真实载体是 uni_modules/gs-webfont) 崮生(子虚) 2026-08-16 15:03:40 +08:00
  • 140f84d3c7 feat: uni-app 插件 gs-webfont —— 字体按需加载(子集化)上线准备 崮生(子虚) 2026-08-16 10:34:40 +08:00
  • f9160950ea chore: 1.13.0 —— demo 页引用 leafer-x-webfont@latest(importmap 统一) 崮生(子虚) 2026-08-15 23:31:22 +08:00
  • 5c85a2ebe7 chore(leafer-x-webfont): 0.2.0 发布 + demo CDN 引用统一 importmap @latest 崮生(子虚) 2026-08-15 23:27:42 +08:00
  • 0ab51e496c perf(leafer-x-webfont): 注册回调贡献者回记+静默链应用,百万节点打字场景零风暴 崮生(子虚) 2026-08-15 21:13:07 +08:00
  • ca1d2fc1e7 feat(webfont-sdk): 0.2.0 新增服务端 API 客户端子路径 webfont-sdk/api 崮生(子虚) 2026-08-15 20:35:17 +08:00
  • b385bc89bc perf(leafer-x-webfont): 脏节点集增量扫描,百万节点画布可正常运行 崮生(子虚) 2026-08-15 20:19:27 +08:00
  • bf98a49a79 perf(leafer-x-webfont): 按 family 内容指纹短路无变化的 loader.update 崮生(子虚) 2026-08-15 19:13:36 +08:00
  • 64b9ca9a57 chore(deps): 全量升级依赖——vite 8.2.1 / jsdom 30 / puppeteer 25.7 / pinyin-pro 3.29 等;unhead 对齐 2.1.17(vite-ssg 内部依赖 2.x,升 3 会双 head 实例) 崮生(子虚) 2026-08-15 16:53:44 +08:00
  • bbfc69e8a6 feat: 首页与 README 增加 LeaferJS 插件入口(链接在线 demo) 崮生(子虚) 2026-08-15 16:48:04 +08:00
  • e0cdbccde0 Merge remote-tracking branch 'origin/dependabot/npm_and_yarn/undici-8.9.0' into new 崮生(子虚) 2026-08-15 16:25:40 +08:00
  • 6c79eeb4ab fix(build): fs 适配层改静态 import 分发——修复 top-level await 与 CJS 构建不兼容(上个提交遗留) 崮生(子虚) 2026-08-15 16:24:47 +08:00
  • c82da2f6ed feat: demo 加源码/npm 链接,构建时复制进主站 dist/leafer-demo/(vite 插件 + sitemap 路由) 崮生(子虚) 2026-08-15 16:22:17 +08:00
  • 64b8bcdbe8 chore: 恢复 doc 下技术截图跟踪,gitignore 收窄为仅 doc/*.md 崮生(子虚) 2026-08-15 16:21:45 +08:00
  • bbc5d6f8b1 feat(demo): 全 CDN 化——leafer-ui/export/插件/SDK 全走 jsDelivr,服务地址本地/线上自适应 崮生(子虚) 2026-08-15 16:18:49 +08:00
  • ec5740c266 chore(packages): 补齐两包 npm 发布元数据(LICENSE/README/types 路径修正/author/repository) 崮生(子虚) 2026-08-15 16:09:30 +08:00
  • 66f16e7040
    chore(deps-dev): bump undici from 8.8.0 to 8.9.0 dependabot[bot] 2026-08-15 08:09:14 +00:00
  • 8d53425483 chore: 移除 doc/ 目录跟踪(商业化文档不入库) 崮生(子虚) 2026-08-15 16:06:33 +08:00
  • a0c2b4aafc feat: webfont-sdk Node 模式 + leafer 版基准测试(双方案并存) 崮生(子虚) 2026-08-15 15:51:42 +08:00
  • 0693521716 feat: SDK 抽取为 webfont-sdk npm 包 + leafer-x-webfont 插件(浏览器验证通过) 崮生(子虚) 2026-08-15 13:07:32 +08:00
  • fe61bace16 fix: 修复所有 TypeScript 类型错误 崮生(子虚) 2026-08-15 07:38:57 +08:00
  • dc1ee66fe3 修复 temp-cleaner 在 LLRT 上的 unlink 兼容性问题 崮生(子虚) 2026-08-15 07:02:22 +08:00
  • d16aa46227 feat: 离线裁剪统计 + 企业服务板块 + SDK文档独立页(/docs) + 示例改用observeFont 崮生(子虚) 2026-08-06 08:57:48 +08:00
  • 09f434bbcf feat: 离线裁剪页面 + 增量预览 + DEV预览页 + tempUploads统计 + SDK缓存破坏 + UI优化 崮生(子虚) 2026-08-03 15:18:01 +08:00
  • 5a7c6a9913 fix: LLRT readdir 不兼容 withFileTypes 导致临时字体清理失效 崮生(子虚) 2026-08-01 08:03:33 +08:00
  • 1979d7c81e fix: FontMeta 接口补上 metaVersion 字段声明 崮生(子虚) 2026-07-31 00:11:23 +08:00
  • fa3fa15bf7 feat: font-meta 并发限制 + metaVersion 磁盘缓存失效 + 清理废弃参数 崮生(子虚) 2026-07-31 00:10:25 +08:00
  • 98c3c5a6e2 fix: 路由切换后滚动到顶部 崮生(子虚) 2026-07-31 00:06:05 +08:00
  • 3e3e8899d5 fix: 修复字体详情页字体未应用——@font-face 替代 link stylesheet 崮生(子虚) 2026-07-31 00:03:33 +08:00
  • 6421e7d059 fix: extractCodePoints 增加 glyph 轮廓验证 + 删除冗余正文预览卡片 崮生(子虚) 2026-07-30 23:50:27 +08:00
  • afbd4db77c fix: 字体加载合并所有预览文字(previewText+bodyTitle+bodyText+charsetPreview) 崮生(子虚) 2026-07-30 23:43:08 +08:00
  • 7638ce7e2d fix: 移除 FontDetail fallback 默认值 + lint 检查缺失字段 + 使用 CodeBlock 组件 崮生(子虚) 2026-07-30 23:37:18 +08:00
  • a095cd0590 feat: 详情页全面接入 font-config + 防闪烁 崮生(子虚) 2026-07-30 23:30:40 +08:00
  • 9397e10aad feat: 字体列表/详情页接入 font-config 配置 + lint 脚本 崮生(子虚) 2026-07-30 23:23:30 +08:00
  • 23728ba02b refactor: 回退内存闸门为固定并发(保留分组调度) + 前端改进 崮生(子虚) 2026-07-30 23:11:54 +08:00
  • d2f6717348 feat: 排队请求按字体分组,同字体连续处理 崮生(子虚) 2026-07-30 22:53:39 +08:00
  • 7403414439 feat: 用内存水位闸门替代固定并发限制 崮生(子虚) 2026-07-30 22:51:37 +08:00
  • b86d2fcb53 fix: 并发默认调到4,队列超时改为可配(30s) 崮生(子虚) 2026-07-30 21:46:21 +08:00
  • 65ba984972 feat: 字体子集化并发队列控制(服务端+客户端) 崮生(子虚) 2026-07-30 21:33:45 +08:00
  • abd75985b7 feat: 临时字体保留时限改为秒为单位(TEMP_RETENTION_SECONDS) 崮生(子虚) 2026-07-30 21:24:38 +08:00
  • 19b14f58ea feat: 字体元数据三层架构 + 临时字体保留机制 + 列表页覆盖率排序 崮生(子虚) 2026-07-30 21:19:09 +08:00
  • 5b82dec19a fix: 首页 header 窄屏适配,按钮文字不换行 崮生(子虚) 2026-07-30 20:33:32 +08:00
  • cdffd4cb57 feat: 字体列表页 + 详情页 SSG + LazyTrigger 懒加载组件 崮生(子虚) 2026-07-30 20:32:42 +08:00
  • d064e9bc8f fix: 进度条方向 + 宽度 崮生(子虚) 2026-07-30 19:53:57 +08:00
  • 3af1a19dce fix: StatsPanel 卡片不显示 — IntersectionObserver 死锁 崮生(子虚) 2026-07-30 17:33:20 +08:00
  • 8273508c79 feat: StatsPanel 视口内才轮询 + 底部进度条动画 崮生(子虚) 2026-07-30 17:26:24 +08:00
  • 5c3ff96c00 docs: 更新 README 裁剪性能数据(node 实测亚毫秒级) 崮生(子虚) 2026-07-26 10:56:46 +08:00
  • 1c87e8ff46 chore: bump version to 1.9.5 崮生(子虚) 2026-07-26 10:48:42 +08:00
  • 7a69792730 perf(sdk): 跨域 baseUrl 自动注入 preconnect 提前握手 崮生(子虚) 2026-07-26 10:48:42 +08:00
  • 4c11470d8c chore: bump version to 1.9.4 崮生(子虚) 2026-07-26 10:39:35 +08:00
  • 27c91bcdc2 perf(observability): /api subset 响应头加 X-Timing-* 分阶段耗时 崮生(子虚) 2026-07-26 10:39:31 +08:00
  • 259cf7f2d8 chore: bump version to 1.9.3 崮生(子虚) 2026-07-26 10:23:47 +08:00
  • 519ce0473b perf(gpos/gsub): 部分命中 lookup 跳过空 subtable(subCount 只数命中的) 崮生(子虚) 2026-07-25 13:42:00 +08:00
  • 4520a901ef perf(otf): hmtx/vmtx 尾部相同 advance 压缩(补齐 TTF 侧 fonteditor 早做的压缩) 崮生(子虚) 2026-07-25 13:37:17 +08:00
  • ade5d279a0 fix(gsub): emitCoverage format 选择改精确字节比较(原判据过宽) 崮生(子虚) 2026-07-25 13:17:49 +08:00
  • 1adbf2e0d1 refactor(gsub): unsupported lookup 也折叠 subCount=1(与 GPOS/supported 对称) 崮生(子虚) 2026-07-25 13:15:16 +08:00
  • 665a089019 perf(gsub): 全空 lookup 折叠 subCount=1(补齐 GPOS 优化330) 崮生(子虚) 2026-07-25 13:13:07 +08:00
  • 2a224b1df7 refactor(cff): origFd→privInfo 查找改 fdRemap 下标 O(1) 崮生(子虚) 2026-07-25 12:54:41 +08:00
  • cda0215b36 perf(otf): woff2 输出跳过 OTF sfnt checksum 计算 崮生(子虚) 2026-07-25 09:54:44 +08:00
  • 51c9f81472 fix(cmap): BMP 字符不再写冗余 format12 subtable 崮生(子虚) 2026-07-25 08:52:30 +08:00
  • 01f920f3f0 perf(gsub): currentSortedSubsetGids 延迟构造,无 format2 ClassDef 时省排序 崮生(子虚) 2026-07-25 08:33:24 +08:00
  • 7b3b0ef592 perf(otf): buildSubsetGids 用 gidToNewGid Map 替代 indexOf O(n) 查找 崮生(子虚) 2026-07-25 08:23:01 +08:00
  • 71105374ee perf(gsub/gpos): lookup 偏移槽改 writeUint16 占位 + writeInt16At 回填 崮生(子虚) 2026-07-25 08:05:55 +08:00
  • 67d2eb5fa5 perf(woff2): ttf→woff2 跳过 TTF checksum 计算 崮生(子虚) 2026-07-25 08:02:11 +08:00
  • 2ed666ec58 perf(gsub): parseChainFormat3 coverage/records 数组按 count 预分配 崮生(子虚) 2026-07-25 07:42:32 +08:00
  • 98102bc3be perf(gsub): writeChainFormat3 coverage 槽改 writeInt16At 回填 崮生(子虚) 2026-07-25 07:39:06 +08:00
  • e8989c7fa4 perf(cff): rewriteCharstring 分支按热度重排 崮生(子虚) 2026-07-25 07:27:00 +08:00
  • ca34a9e648 perf(cff): collectSubrRefs 分支按热度重排 崮生(子虚) 2026-07-25 07:25:37 +08:00
  • d2b3b1939f perf(cff): 跳过无 CALLSUBR 字形的 rewriteCharstring 崮生(子虚) 2026-07-25 07:17:12 +08:00
  • 7a76208558 perf(gsub): coverageAllOutOfSubset range 相交判定改二分 崮生(子虚) 2026-07-25 07:01:35 +08:00
  • 6d224c2405 perf(gpos): writeEmptyPosSubtable 空 subtable coverageOff 直接写常量 崮生(子虚) 2026-07-25 06:46:55 +08:00
  • bda73ccea8 perf(gsub-reachable): format3 失败快判内联主循环,省完整 collectChainRefs 调用 崮生(子虚) 2026-07-25 06:41:02 +08:00
  • 0cfd9851df perf(gpos): subsetGPOS 全模块 origToNew(Map)→gidLookup(Int32Array) 崮生(子虚) 2026-07-25 05:36:49 +08:00
  • ae41a99e95 perf(gsub): serialize type2/3/4 大 coverage 反转遍历 + 修越界 undefined bug 崮生(子虚) 2026-07-25 04:58:34 +08:00
  • 01b7ee432d perf(ot-bytes): toUint8Array 返回 subarray view 省去 size 字节 memcpy 崮生(子虚) 2026-07-25 04:39:22 +08:00
  • e1190eeb82 perf(woff2): transformGlyfAndLoca simple glyph 跳过 bbox 读取 崮生(子虚) 2026-07-25 03:59:53 +08:00
  • 32afa17b5c perf(woff2): transformGlyfAndLoca x/y 直接用 TTF delta 编码 triplet 崮生(子虚) 2026-07-25 03:54:54 +08:00
  • 1bc87763ad perf(gsub): fmt3 预检改用 coverageAllOutOfSubset 内联快判,跳过 readCoverageRemapped 崮生(子虚) 2026-07-25 03:32:15 +08:00
  • 49337c72bc perf(gsub): 缓存 isSubtableSkipableByCoverage per-subtable 结果,serialize 复用 崮生(子虚) 2026-07-25 03:20:05 +08:00
  • d0dbbece82 fix(gsub): readCoverageRemapped 命中 readCoverageGids 的 cache entry 时正确重映射 崮生(子虚) 2026-07-25 03:18:19 +08:00
  • a87f2eb0ff perf(cff): rewriteCharstring 用标量替代 stackStart[]/stackVal[] 两数组 崮生(子虚) 2026-07-25 03:03:54 +08:00
  • 94f89ddbb8 perf(cff): collectSubrRefs 用 stackLen+lastVal 替代 stack:number[] 崮生(子虚) 2026-07-25 02:53:41 +08:00
  • efe24d9312 perf(cff): rewriteCharstring/replaceDictOffsets 用 Uint8Array+写指针替代 number[] 崮生(子虚) 2026-07-25 02:52:13 +08:00
  • db33685475 perf(gsub): serializeSingleSubst 大 coverage 反转遍历,思源 -63% 崮生(子虚) 2026-07-25 02:00:05 +08:00
  • baa3a026ed refactor(gsub): 去除 subtableAbsPositions 中间数组 崮生(子虚) 2026-07-25 01:39:10 +08:00
  • 58fc647880 perf(gsub): subtable 偏移槽 writeUint16 占位回填替代 reserveOffset16 闭包 崮生(子虚) 2026-07-25 01:35:50 +08:00
  • 2834c4d4ab perf(cff): Local Subr INDEX 改轻量头部按需读 offset,subsetCFF -59% 崮生(子虚) 2026-07-25 01:05:35 +08:00
  • 70d3a2a3dc perf(cff): Local Subr INDEX 子集化,思源 OTF woff2 641KB→10KB(-98%) 崮生(子虚) 2026-07-25 00:59:40 +08:00
  • f1c8315b0c perf(gsub-reachable): 大 coverage 反转路径用字节二分省掉数组展开 崮生(子虚) 2026-07-25 00:27:56 +08:00
  • 07432852cf fix(otf-subset): 保留 GSUB locl 变体 target 字形,思源 otf SSIM 0.9530→1.0000 崮生(子虚) 2026-07-24 23:50:37 +08:00
  • 94e75ea2ba perf(cff): Name/String/Global Subr INDEX 改 indexByteRange,删 getIndexBytes 崮生(子虚) 2026-07-24 23:28:37 +08:00
  • e8ae79a58c perf(cff): Local Subr INDEX 改 indexByteRange 不全量解析 offset,subsetCFF -46% 崮生(子虚) 2026-07-24 23:24:18 +08:00
  • 7cd960617a perf(otf): calcTableChecksum 改 DataView.getUint32 批量读,assemble -83% 崮生(子虚) 2026-07-24 23:18:37 +08:00
  • 98b56b4f35 perf(otf): assembleSfnt wholeSum 复用各表 checksum,消除全文件二次遍历 崮生(子虚) 2026-07-24 23:12:05 +08:00
  • e37593a552 perf(cff-subset): 三处全量解析改按需查询,思源 subsetCFF -77% 崮生(子虚) 2026-07-24 23:05:54 +08:00