1.軟件環境
博主的環境如下:
Windows 10-10.0.17134-SP0
Graphviz 2.38
2.問題描述
最近需要用到Graphviz 畫流程圖,英文的完全沒有問題:
digraph g {
"a" -> "b"
}
結果:
但是在使用中文的時候卻出現了亂碼。如下:
digraph g {
"使用中文畫圖" -> "成功"
}
結果:
3.解決方法
1.打開安裝Graphviz的安裝路徑,找到 C:\Program Files(x86)\Graphviz 2.38\etc\fonts\fonts.conf,並打開fonts.conf找到下行:
<dir>#FONTDIR#</dir>
注意:1.有的電腦是裝在Program Files而不是Program Files(x86)
2.如果沒有<dir>#FONTDIR#</dir>,可以找一下是否有<dir>#WINDOWSFONTDIR#</dir>,只要兩者其中有一個即可!
2.將其修改爲WINDOWS的路徑即可:
<dir>C:\WINDOWS\Fonts</dir>
3.在代碼前面加上中文字體的具體名稱:
digraph g {
node[fontname = "Fangsong"];
"使用中文畫圖" -> "成功"
}
結果:
附錄:windows系統中文字體的英文名
新細明體:PMingLiU
細明體:MingLiU
標楷體:DFKai-SB
黑體:SimHei
宋體:SimSun
新宋體:NSimSun
仿宋:FangSong
楷體:KaiTi
仿宋_GB2312:FangSong_GB2312
楷體_GB2312:KaiTi_GB2312
微軟正黑體:Microsoft JhengHei
微軟雅黑體:Microsoft YaHei