update at 2026-02-08 18:28:39
This commit is contained in:
@@ -1,7 +1,10 @@
|
||||
#!/usr/bin/env python3
|
||||
"""
|
||||
生成字体清单 JSON 文件
|
||||
扫描 frontend/public/fonts/ 目录下的所有字体文件,生成 frontend/public/fonts.json
|
||||
生成字体清单文件
|
||||
扫描 frontend/public/fonts/ 目录下的所有字体文件,同时生成:
|
||||
1. frontend/public/fonts.json
|
||||
2. miniprogram/assets/fonts.json
|
||||
3. miniprogram/assets/fonts.js
|
||||
"""
|
||||
|
||||
import os
|
||||
@@ -44,6 +47,23 @@ def scan_fonts(font_dir='frontend/public/fonts'):
|
||||
|
||||
return fonts
|
||||
|
||||
def write_fonts_json(fonts, output_file):
|
||||
"""写入字体清单 JSON 文件"""
|
||||
os.makedirs(os.path.dirname(output_file), exist_ok=True)
|
||||
with open(output_file, 'w', encoding='utf-8') as f:
|
||||
json.dump(fonts, f, ensure_ascii=False, indent=2)
|
||||
print(f"字体清单已保存到: {output_file}")
|
||||
|
||||
|
||||
def write_fonts_js(fonts, output_file):
|
||||
"""写入小程序可 require 的 JS 清单文件"""
|
||||
os.makedirs(os.path.dirname(output_file), exist_ok=True)
|
||||
content = "module.exports = " + json.dumps(fonts, ensure_ascii=False, indent=2) + "\n"
|
||||
with open(output_file, 'w', encoding='utf-8') as f:
|
||||
f.write(content)
|
||||
print(f"字体清单已保存到: {output_file}")
|
||||
|
||||
|
||||
def main():
|
||||
"""主函数"""
|
||||
# 扫描字体(唯一来源:frontend/public/fonts)
|
||||
@@ -51,14 +71,10 @@ def main():
|
||||
|
||||
print(f"找到 {len(fonts)} 个字体文件")
|
||||
|
||||
# 保存到 JSON 文件
|
||||
output_file = 'frontend/public/fonts.json'
|
||||
os.makedirs(os.path.dirname(output_file), exist_ok=True)
|
||||
|
||||
with open(output_file, 'w', encoding='utf-8') as f:
|
||||
json.dump(fonts, f, ensure_ascii=False, indent=2)
|
||||
|
||||
print(f"字体清单已保存到: {output_file}")
|
||||
# 同步写入 Web 与小程序清单
|
||||
write_fonts_json(fonts, 'frontend/public/fonts.json')
|
||||
write_fonts_json(fonts, 'miniprogram/assets/fonts.json')
|
||||
write_fonts_js(fonts, 'miniprogram/assets/fonts.js')
|
||||
|
||||
# 统计信息
|
||||
categories = {}
|
||||
|
||||
Reference in New Issue
Block a user