【问题描述】:当一个DGN文件在中文版软件和英文版软件中都打开过后,查看其显示样式对话框,发现都变成了英文的名字。如下图所示:
【原因分析】:这些显示样式名称可以保存在当前DGN中,如果当前DGN中没有的话,就会到一个叫做DrawingSeed.dgnlib中去查找。而中文的显示样式名称都保存在C:\Program Files\Bentley\MicroStation CONNECT Edition\MicroStation\Default\Dgnlib\DrawComp\zh-CN\DrawingSeed.dgnlib中。
【解决方案】:
1、在当前DGN中打开显示样式对话框,将那些显示为黑体的(说明是保存在当前文件中的)英文显示样式名称都删除。测试看问题是否解决了。
2、如果还没有解决,需要以管理员身份打开C:\Program Files\Bentley\MicroStation CONNECT Edition\MicroStation\Default\Dgnlib\DrawComp\zh-CN\DrawingSeed.dgnlib,查看其中是否已经被英文显示样式名污染,如果有的话,请删除那些英文显示样式名。测试看问题是否解决了。
3、如果还没有解决,则在命令输入对话框中键入Show Files并回车,在弹出的黑窗口中能查看到打开当前DGN所加载的所有DGNLIB,逐个DGNLIB查看,看是否有保存了英文显示样式名称的,有的话,将其删除。
【特别注意】:请千万不要删除系统本身的C:\Program Files\Bentley\MicroStation CONNECT Edition\MicroStation\Default\Dgnlib\DrawComp\DrawingSeed.dgnlib下的英文显示样式名称。
4、但是这种解决后的DGN文件一旦在英文版中打开并自定义过显示样式,或者在一个未能加载C:\Program Files\Bentley\MicroStation CONNECT Edition\MicroStation\Default\Dgnlib\DrawComp\zh-CN\DrawingSeed.dgnlib的环境下打开,显示样式下拉菜单可能又会变成英文,或者甚至一个都没有。所以,最狠的一招是直接设置配置变量MS_DGNLIBLIST_DISPLAYSTYLES指向$(_USTN_SYSTEMROOT)dgnlib\drawcomp\zh-cn\drawingseed.dgnlib。如下图所示。当然,这一招的副作用是,切换到英文版后这个显示样式菜单还是中文的。感觉是这个设计并未充分考虑中英文语言切换的问题。
【进阶说明】: