+21
fzg/add_features.py
+21
fzg/add_features.py
···
1
+
from fontTools.feaLib.builder import addOpenTypeFeatures
2
+
import fontTools.ttLib as ttLib
3
+
from metadata import USED_FEATURES
4
+
import io, os
5
+
6
+
def generate_feature_file(used_features=USED_FEATURES):
7
+
result = ""
8
+
for feature_file in used_features:
9
+
with open(feature_file) as f:
10
+
result += f.read()
11
+
return result
12
+
13
+
full_feature = io.StringIO(generate_feature_file())
14
+
15
+
def replace_font(path: str, feature_text = full_feature):
16
+
font = ttLib.TTFont(path)
17
+
addOpenTypeFeatures(
18
+
font, full_feature
19
+
)
20
+
font.save(path)
21
+
+4
fzg/metadata.py
+4
fzg/metadata.py
···
5
5
"ZLabsBitmapHC_diff.kbitx": -1,
6
6
"ZLabsBitmapJP_diff.kbitx": -1,
7
7
}
8
+
9
+
USED_FEATURES = "open-relay/features/languages.fea open-relay/features/sequences.fea open-relay/features/slc-variants.fea open-relay/features/variants.fea extendable.fea open-relay/features/extensions.fea".split(" ")
10
+
11
+
# TODO: 加入道本语支持(卵用没有其实)