【发布时间】:2011-10-08 06:34:16
【问题描述】:
我创建了一个点文件。它在某些节点的标签中包含一些韩语。我在 graphvig 工具的帮助下创建了 png 文件,但创建的 png 不支持韩语,它显示为方形框。如果我创建 svg 文件,那么它工作正常。 帮我解决这个问题。
【问题讨论】:
标签: utf-8 character-encoding graphviz
我创建了一个点文件。它在某些节点的标签中包含一些韩语。我在 graphvig 工具的帮助下创建了 png 文件,但创建的 png 不支持韩语,它显示为方形框。如果我创建 svg 文件,那么它工作正常。 帮我解决这个问题。
【问题讨论】:
标签: utf-8 character-encoding graphviz
还可以尝试运行 dot -v 来查看正在加载的插件和字体文件。一般来说,我们希望 UTF-8 可以工作(多年来在这方面做了很多工作),并且通过 cairopango 驱动程序的文本布局效果很好。一个缺点是 pango 现在可以进行自己的字体查找,这对其他代码来说有点像黑盒子。 (pango 最近放弃了 fontconfig,这是可以理解的。我们从未找到一种方法来确定 fontconfig 是否未能找到与给定规范匹配的好方法——当它找不到任何其他匹配时,它会愉快地返回例如打字机字体。)希望这有所帮助。 Stephen North(用于 graphviz 项目)
【讨论】:
我遇到了同样的问题,当生成 .png 文件时,非 ascii 字符无法正确呈现。
我的替代解决方案是使用.svg 输出(通过一些命令,例如:dot -Tsvg my_graph.gv),这将字体查找问题留给了 svg 查看器。
您可以使用 Web 浏览器打开 .svg 文件。如果您坚持使用.png 格式,大多数Web 浏览器还支持save as 函数将.svg 文件转换为.png。
希望对你有帮助
【讨论】:
我遇到了同样的问题,添加以下几行对我有帮助:
strict digraph {
node [ fontname="Adobe Kaiti Std" ];
edge [ fontname="Adobe Heiti Std" ];
}
【讨论】:
确保在图中定义韩语987654321 @。
【讨论】: