feat(字体处理): 优化字体裁剪与依赖校验
build.yaml / build (push) Successful in 1m17s

This commit is contained in:
xiaoqidun committed 2026-10-12 16:55:10 +08:00
1 parent 7bce701907
commit 92149b220e
3 files changed
+39 -38

No files matched your search

+8 -8
View File
@@ -17,6 +17,8 @@ package ofdgo
import (
"encoding/binary"
"fmt"
"maps"
"slices"
)
// variableSFNTSubsettable 核对TrueType可变轴与字形变化表的基本结构
@@ -51,14 +53,12 @@ func subsetVariableSFNTFont(sfnt *sfntFont, glyphs []uint16) ([]byte, error) {
usage.chars[char] = true
}
}
for gid := range usage.glyphs {
dependencies, err := sfnt.glyphDependencies(gid)
if err != nil {
return nil, err
}
for _, dependency := range dependencies {
usage.glyphs[dependency] = true
}
dependencies, err := sfnt.glyphDependencies(slices.Collect(maps.Keys(usage.glyphs))...)
if err != nil {
return nil, err
}
for _, dependency := range dependencies {
usage.glyphs[dependency] = true
}
mapping := make(map[rune]uint16, len(usage.chars))
for char := range usage.chars {