Graphviz中文处理

xiaoxiao2021-02-28  82

graphviz中显示中文需将dot文件保存为UTF-8格式; 脚本中需要明确中文字体,例如以下定义中文字体为仿宋体: digraph G { edge [fontname="FangSong"] node [shape=box, fontname="FangSong" size="20,20"] a[label="中文标签1"] b[label="中文标签2"] a->b

}

说明:

a)  将带BOM的UTF-8格式的dot脚本在graphviz的IDE(gvedit.exe)中打开可以正常在图片中显示中文; 但是如果在IDE中对脚本进行了编辑,并保存后,会被保存为不带BOM的UTF-8格式的文件;下次再在gvedit.exe中打开该文件后图片中的中文就会导致乱码;

解决方案:

1是不在gvedit.exe中编辑脚本,用ultraedit编辑; 2 是利用ultraedit将不带BOM的脚本文件另存为带BOM的脚本文件 b)  利用dot指令将dot脚本生成图片时,dot脚本必须是不带BOM的utf-8格式; 总结:当dot脚本中出现中文时,必须使用utf-8格式的脚本,但是IDE(gvedit.exe)和dot.exe打开文件时,二者对BOM的要求不同; 1/IDE打开脚本时,脚本中必须带BOM 2/dot.exe打开时,脚本不能带BOM

转载请注明原文地址: https://www.6miu.com/read-65007.html

最新回复(0)