指点成金-最美分享吧

登录

ArcGIS Pro快速汉化方法

佚名 举报

篇首语:本文由小编为大家整理,主要介绍了ArcGIS Pro快速汉化方法相关的知识,希望对你有一定的参考价值。

ArcGIS Pro快速汉化方法

文章导读:ArcGIS Pro作为ArcMap的接棒者,已经逐步出现在各种GIS试用环节中,其功能和特色就不用说了,本文主要说明一下ArcGIS Pro的汉化问题。跟ArcMap一样,ArcGIS Pro 每个版本都会有官方的中文包(特别说明,这是官方发布的中文包),但一般中文包会落后原生的英文包本年时间左右,对于ArcGIS Pro 中文版重度试用并喜欢尝鲜的人来说,这个等待的过程特别漫长。本文通过剖析ArcGIS Pro的本地化技术,通过自编写的小程序,结合上一版的ArcGIS Pro中文版,实现Pro 界面的快速汉化(原则上都是官方的中文版,只不过是使用上一版的中文版作为基础套到最新版本的中使用),这样可以在官方发布最新的ArcGIS Pro版本时第一时间使用到中文界面。 By 李远祥

汉化的效果

首先看看笔者汉化 ArcGIS Pro 的效果。该版本时以ArcGIS Pro 2.0 中文版作为蓝本,直接作用在ArcGIS Pro 2.1 英文版上的。完全保留了2.0的汉化效果,新版本出现的新功能都是原来的英文显示。

总体上说,作者的这种快速汉化方式还是比较好的,完完全全将上个版本的官方中文直接应用在最新版本中。
再来看看没有汉化的部分,毕竟官方的中文版是比较大的,而作者的汉化手段也比较特殊,原则上绝对很难完全汉化的,这种方式只适合尝鲜使用。
没汉化的部分包括所有的单独弹出窗口和可移动面板,例如属性表、符号设置窗体等



如果希望这种汉化方式能够完全汉化的话,是不科学的。要使用完整版本的中文版,笔者还是建议等待官方的正式中文包。

ArcGIS Pro 本地化的技术说明

大多数软件都有本地化技术,就是我们常说的多国语言支持。ArcGIS Pro 也是一样,我们可以通过查看ArcGIS Pro 2.0 简体中文版的结构来了解其本地化的方式。
在装有ArcGIS Pro中文版的机器上,去查看其安装目录,直接到例如 C:\Program Files\ArcGIS\Pro\bin 路径下,可以看到 一个 zh-CN 的文件夹,这个文件夹内包含的就是中文版资源的目录

该目录下有一大堆的包含 resources 关键字的dll,其实质就是中文化的面板和窗体资源,如下图

其每一个dll是关联到Bin目录下的一些dll,例如Bin目录下的ArcGIS.Desktop.Editors.Wpf.dll ,会跟zh-CN的ArcGIS.Desktop.Editors.Wpf.resources.dll 对应,共同组成本地化资源。

如果有用过Sisulizer等专业的本地化工具基本上就能理解这个结构。

另一个是非界面的东西,例如中文帮助,在Help目录下同样可以找到zh-CN 目录,如下图所示

如果想使用中文帮助的话,笔者是建议将上一个版本的中文包直接拷贝走,将帮助文档的启动首页直接放在计算机桌面使用就好了。

另外一个就是笔者的方式,也就是开始截图部分,基本上都是Ribbon主界面的汉化。这个目录在C:\Program Files\ArcGIS\Pro\bin\Extensions 中,看字面的意思是扩展,其实跟扩展模块没任何的关系。Extensions目录下是每个主要功能模块的dll和配置文档。

以Editing为例,打开后可以看到中文版下同样也有zh-CN的目录

根目录下的是英文的界面,如果切换到中文的话,程序会调用zh-CN里面的内容。打开zh-CN目录,可以看到里面的一些文件构成。如下图

其中有一个是resources文件,另一个是后缀为daml的文件。dll文件我们无法处理,但这个daml文件则是一个xml文件,可以用专业的文件编辑器打开,这样方便阅读。

笔者的汉化方式就是针对这些daml文件进行的。

以中文包里面的daml文件为例,可以查看一下其结构,每个文件的结构都不一样,但还是会有一些特征可寻。


从截取的代码来看,本地化部分一般集中在caption、heading、extendedCaption、disabledText 等标签中。有了这些特征的话,就可以将英文版的同样的文件进行对照了。这就是最关键的一步。

这个文件结构是最简单,而且是最安全的修改方式。如果想手动去对照修改,工作量是非常大的。所以笔者是通过编写程序进行处理。

自制的汉化工具

相信通过前面的介绍,大部分程序员已经知道笔者的意图的。没错,就是拿着上一个中文版的daml文件,读取里面的几个关键,将其内容写到最新版的英文版的关键字中。

也许有人会问,为什么不能直接将上一中文版的daml文件直接覆盖到最新英文版的文件中。笔者通过前后对比,发现Esri每个版本的daml文件都做了修改,甚至是结构也做了修改。唯一庆幸的是对应的关键字是保留的,所以只能通过程序读取和识别,将中文部分直接读出来,写到对应的xml属性和节点中。直接覆盖的话,ArcGIS Pro 启动就直接崩溃了。

再来看看汉化的程序。程序很简单,就是一个运行exe加上一个zh-CN目录,而这个zh-CN目录里面存放的内容,就是来自上一中文版的 C:\Program Files\ArcGIS\Pro\bin\Extensions 路径里面每个zh-CN文件夹里面的daml文件。为了图方便,笔者是从上一中文版中每一个文件拷贝出来的,后续会添加一个自动拾取功能,可以放在中文版的机器上让其自动拾取重要的中文配置文件。

其运行很简单,将这个程序和资源复制到装有最新英文版的ArcGIS Pro 中,双击运行一下,提示完成操作即可实现主界面汉化。

汉化后是不需要切换语言的,因为最新的版本都只有英文版,所以,其设置还是会保留原来的英文语言设置。

因为在根目录下的daml文件已经被修改了,可以看到修改的日期为2018年2月9日,跟原来的文件日期不一样了。

这种方式有点投机取巧,但也不失为一种好办法,可以完全忽略掉resource dll的限制,也可以实现跨版本的修改,享受同样的官方翻译的待遇。

该工具笔者已经上传,ArcGIS Pro 尝鲜者或者中文版重度使用者、从事培训行业的人员可以尝试使用。可以到 http://download.csdn.net/download/liyuanxiang1984/10259523 进行下载。

总结

ArcGIS Pro 作为Esri的重要桌面工具,使用人群会越来越多。对于很多习惯使用中文版的人群来说,等待官方中文版的过程过于漫长。作为骨灰级的ArcGIS使用者,笔者还是希望通过自身的努力,为更多人带来一些必要的遍历。工具还有很多需要改进的地方,例如自动拾取上一中文版的daml文件以及备份还原最新英文版的daml文件的功能都还没有编写,不过问题并不大,最核心的功能已经实现了。

更多的GIS主流和非主流技术,可以持续关注CSDN的GIS制图乐园,以及微信公众号【GIS制图乐园】。BY 李远祥

以上是关于ArcGIS Pro快速汉化方法的主要内容,如果未能解决你的问题,请参考以下文章