现状
crates/opentake-render/src/gpu/text_raster.rs rasterize_box 在 FontSystem 零字体/family 无字形时仍返回 Some(全 0 RGBA),预览/导出/inspect 三个调用点(render.rs / export.rs / mcp.rs)均无 has_fonts() 守护或日志——字体环境异常时文字'无声消失',不可诊断(gpu_text.rs 测试注释已自知此风险)。本机字体正常(ASCII+CJK 实测可渲染),属潜在环境风险。
修复
三个生产调用点构造 CosmicTextRasterizer 后检查 has_fonts(),false 时 tracing::warn 一条明确日志;中期给 attrs_for 加 Family::SansSerif 兜底。
现状
crates/opentake-render/src/gpu/text_raster.rsrasterize_box 在 FontSystem 零字体/family 无字形时仍返回 Some(全 0 RGBA),预览/导出/inspect 三个调用点(render.rs / export.rs / mcp.rs)均无 has_fonts() 守护或日志——字体环境异常时文字'无声消失',不可诊断(gpu_text.rs 测试注释已自知此风险)。本机字体正常(ASCII+CJK 实测可渲染),属潜在环境风险。修复
三个生产调用点构造 CosmicTextRasterizer 后检查 has_fonts(),false 时 tracing::warn 一条明确日志;中期给 attrs_for 加 Family::SansSerif 兜底。