再谈ArcGIS Runtime SDK for Android中文标注无法显示的问题
2015-11-28 19:20
507 查看
关于离线geodatabase中文标注无法显示的问题,小编曾在《如何解决ArcGIS Runtime SDK for Android中文标注无法显示的问题》一文中进行了详细且完整的阐述。然而,在具体操作过程中,还是存在着诸多麻烦之处。今天呢,小编将再次探讨一下这一问题的解决。
我们晓得,通过向本机的操作系统中安装DroidSansFallback.ttf字体文件,当对mxd文档中对应图层的标注选择字体时,只能获得名为Droid Sans Fallback的字体,随后所生成的离线geodatabase的GDB_ServiceItem表中ItemInfo列的FontFamily属性值也只会等于“Droid Sans Fallback”,而非我们所希望的“DroidSansFallback.ttf”。肿么办呢?
分析!分析!再分析!!
首先,我们可打开并预览到DroidSansFallback.ttf字体文件中所显示的字体名称为 Droid Sans Fallback。
基于大胆猜测、小心求证的科研精神(哈哈,貌似不需要啥胆量O(∩_∩)O~),我们就先预设这一属性值即为离线geodatabase创建过程中所获取的实际值。那么,接下来的步骤当然就是修改这一属性值。
启动FontCreator工具,打开DroidSansFallback.ttf文件。
依次点击Font>Properties打开Font Properties对话框,在Identification选项卡下,将Font Family的值由Droid Sans Fallback修改为DroidSansFallback.ttf,点击确定。
点击File>Export Font>Export As TrueType/OpenType Font保存为DroidSansFallback.ttf文件。
双击以安装这一导出的新的字体文件。
打开ArcMap,对要标注的图层选择并设置新增加的字体DroidSansFallback.ttf。
导出geodatabase,打开进行查看以验证FontFamily的值。这里的值已按照需要正确显示。
按照上述方法,我们就无需再手动修改geodatabase表中的字段属性值了。是不是方便了很多呢?
而且,更为重要且可以说至为关紧的是,当您在ArcGIS for Server所在的机器上安装了这一字体且通过重启机器确保字体生效后,以服务模式下载所获取的geodatabase不经任何修改即可正确显示中文标注了。自己给自己点个赞吧。
注:在加载FeatureLayer的时候,一定要调用setEnableLabels (true)方法实现标注信息的显示。
我们晓得,通过向本机的操作系统中安装DroidSansFallback.ttf字体文件,当对mxd文档中对应图层的标注选择字体时,只能获得名为Droid Sans Fallback的字体,随后所生成的离线geodatabase的GDB_ServiceItem表中ItemInfo列的FontFamily属性值也只会等于“Droid Sans Fallback”,而非我们所希望的“DroidSansFallback.ttf”。肿么办呢?
分析!分析!再分析!!
首先,我们可打开并预览到DroidSansFallback.ttf字体文件中所显示的字体名称为 Droid Sans Fallback。
基于大胆猜测、小心求证的科研精神(哈哈,貌似不需要啥胆量O(∩_∩)O~),我们就先预设这一属性值即为离线geodatabase创建过程中所获取的实际值。那么,接下来的步骤当然就是修改这一属性值。
启动FontCreator工具,打开DroidSansFallback.ttf文件。
依次点击Font>Properties打开Font Properties对话框,在Identification选项卡下,将Font Family的值由Droid Sans Fallback修改为DroidSansFallback.ttf,点击确定。
点击File>Export Font>Export As TrueType/OpenType Font保存为DroidSansFallback.ttf文件。
双击以安装这一导出的新的字体文件。
打开ArcMap,对要标注的图层选择并设置新增加的字体DroidSansFallback.ttf。
导出geodatabase,打开进行查看以验证FontFamily的值。这里的值已按照需要正确显示。
按照上述方法,我们就无需再手动修改geodatabase表中的字段属性值了。是不是方便了很多呢?
而且,更为重要且可以说至为关紧的是,当您在ArcGIS for Server所在的机器上安装了这一字体且通过重启机器确保字体生效后,以服务模式下载所获取的geodatabase不经任何修改即可正确显示中文标注了。自己给自己点个赞吧。
注:在加载FeatureLayer的时候,一定要调用setEnableLabels (true)方法实现标注信息的显示。
相关文章推荐
- Android之RxJava(一)
- android-Creating a Content Provider(2)
- Android知识总结:Universal-Imageloader学习笔记1 基本功能与配置
- Android系统源码下载过程
- android中用Spannable在TextView中设置超链接、颜色、字体
- Android环境的搭建
- Android播放视频
- Android Studio手把手——帮你了解Gradle
- android---logcat
- Android的绘图机制学习---自定义View
- Android使用AlarmManager全局定时器实现定时更换壁纸
- android-Creating a Content Provider
- 【分享】Android Studio专用文件转换工具:把ANSI文件批量另存为无BOM的UTF-8文件
- Android验证码简单设计
- Activity 生命周期回顾 onSaveInstanceState()
- Android逆向之旅---静态分析技术来破解Apk
- android生命周期:activity
- Android兼容性问题 -- RelativeLayout.mesure()出现NullPointerException异常
- Android自定义view以及组合view
- android MotionEvent