fix: ASS Fontname 字体名称映射到服务器注册名 #1508
Reference in New Issue
Block a user
Delete Branch "fix/ass-font-name-mapping"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
前端传中文字体名(思源黑体/苹方/微软雅黑等),服务器上 ffmpeg 通过注册名匹配,导致字体 fallback 到默认。
加 FONT_NAME_MAP 字典:思源黑体→Noto Sans CJK SC、思源宋体→Noto Serif CJK SC 等。build_ass_style 中 actual_font = FONT_NAME_MAP.get(font_name, font_name),未映射原样透传。
新增4个字体映射单测。
【阻塞级判定】
📊 审查概览
🔴 阻塞级问题(必须修复)
无
💡 改进建议(不阻塞合并)
无
✅ 良好实践
[packages/domain/ass_subtitle_builder.py] 字体映射逻辑健壮
dict.get(key, default)方法优雅地处理了未命中映射的情况,确保未知字体名能原样透传,避免了潜在的 KeyError 或逻辑中断。[tests/unit/test_ass_subtitle_builder.py] 测试覆盖充分
[tests/unit/test_ass_subtitle_builder.py] 及时更新现有测试
test_minimal_style中及时更新了断言,从检查中文字体名改为检查映射后的服务器注册名,保证了测试用例与实现逻辑的一致性。🤖 由 AI 代码审查机器人自动生成 | 2026-08-26 08:43:26 | 模型:
🚀 预览环境已部署
CI全绿,自动审批通过。
CI全绿,自动审批通过。
🗑️ 预览环境已清理
PR #1508 已关闭或合并,对应的预览环境已被清理。