Graphviz中文处理

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值