崮生(子虚) ee7b6ec230 perf(gpos): 全空 lookup 折叠为 subCount=1 + subtable 偏移槽消除闭包
优化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 近乎免费,但简化代码)。
2026-07-24 14:57:02 +08:00
..
2026-04-08 22:05:17 +08:00
2024-08-19 18:10:09 +08:00