You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Linux下如何在MigraDoc中正确显示Unicode字符?

针对Migradoc 6.0.0-preview-3 Debian环境Unicode字符渲染问题的方案验证

方案可行性结论

将Arial的.ttf字体文件复制到/usr/share/fonts/fontsforpdfcreation目录的方案完全可行,能够解决重音字符丢失的问题。

问题根源

Debian系统默认通常不预装完整的Arial字体,NewFontResolver扫描系统字体目录时,可能只能找到缺失扩展字符集的替代字体(或根本找不到Arial),导致PDF渲染时使用不支持重音字符的字体替代,最终显示无重音的字符。而Windows环境下Visual Studio能正常显示,是因为系统默认包含完整的Arial字体文件。

关键注意事项

  • 确保复制的是包含拉丁语系扩展字符集的完整Arial字体文件,避免使用仅包含基础字符的简化版本。
  • 复制字体后执行fc-cache -fv命令更新系统字体缓存,让NewFontResolver能识别到新添加的字体。
  • 配置正确的文件权限:设置/usr/share/fonts/fontsforpdfcreation目录权限为755,字体文件权限为644,确保ASP.NET应用进程有读取权限。

更优替代方案

如果希望避免修改系统级目录,可调整NewFontResolver的扫描路径,将Arial字体文件放在应用私有目录(如wwwroot/fonts),修改Resolver代码让其优先扫描该目录。这种方式更符合应用部署的隔离性,不会影响系统其他组件的字体配置。

内容的提问来源于stack exchange,提问作者Andrus

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.09 16:24:54