mirror of
https://github.com/2234839/web-font.git
synced 2026-09-12 03:35:44 +08:00
优化330: 预扫描 supported lookup 的 subtable coverage 命中,全无命中的 lookup 折叠为单个空 subtable(feature 按 lookup index 引用,subCount 改变语义等价, 浏览器查空 coverage 即跳过)。大字体小子集场景(初夏 GPOS lookup[10] 283 个 SinglePos subtable 全空、lookup[7] 285 个仅 3 命中)原先逐空 subtable 序列化 是 subsetGPOS 主热点。unsupported lookup 同理折叠。 subsetGPOS 初夏纯标点 570→380μs(-33%)、思源 8 字 85→26μs(-70%)。 附带 woff2 体积下降(空 lookup 不再逐 subtable 输出):思源 8字 2632→2536B、 初夏纯标点 6940→6912B。SSIM 全部不变。 优化329: lookup 循环 subtable 偏移槽用 writeUint16 占位 + writeInt16At 统一回填, 替代 reserveOffset16 的 per-slot 闭包分配(短命闭包虽 V8 近乎免费,但简化代码)。