您现在的位置: 首页 > SDK开发 > 开发指南


室内地图中英文切换多语言支持(收费功能) ESMap支持动态语言切换,可以无缝衔接国际化项目应用,支持28种语言切换,覆盖中文、英语、粤语、日语、韩语、法语、西班牙语、泰语、阿拉伯语、俄语、葡萄牙语、德语、意大利语、希腊语、荷兰语、波兰语、繁体中文等。

您可以任选三种语言配置到地图中,无需重新再制作几次地图,直接动态无缝切换地图语言。
langswitch

切换地图数据语言

1.配置地图初始化参数 lang 属性
 
    map = new esmap.ESMap({
        //配置地图语言
        lang:esmap.ESLang.LANGUAGE1  
       
        //可选值:
        //esmap.ESLang.CHINESE(默认),
        //esmap.ESLang.LANGUAGE1(自定义语言1),
        //esmap.ESLang.LANGUAGE2(自定义语言2)
   });
2.拷贝语言文件mapid.ESLang.json到对应的地图数据目录下(与**.esmap文件同级)
3.复制地图数据目录下的imageLogo文件夹,重命名为imageLogo1(对应esmap.ESLang.LANGUAGE1)或者imageLogo2(对应esmap.ESLang.LANGUAGE2)

切换地图导航语言(语言播报和导航提示)

1.获取地图导航语音所有默认配置

   var defaults = map.getMapNavLangLib()   //defaults: { turnLeft:'左转',turnRight:'后转'...}
2.翻译对应语句,并调用地图设置用户自定义导航语言方法

    var newConfig = {}
    for(var i in defaults){  
        newConfig[i] = 'turn Left' //根据key,传入对应翻译
    }
    //newConfig = {turnLeft:'turn Left',turnRight:'turn Right'...}
    map.setUserNavLangLib(newConfig)  //设置自定义语言

切换地图内置语言(例如比例尺"米"切换为英文"m")

1.获取地图内置默认语言配置

    var defaults = map.getMapGenLangLib()   //defaults: { meter:'米'...}
2.将各语句对应翻译传入地图对应方法

    var newConfig = {}
    for(var i in defaults){  
        newConfig[i] = 'm' //根据key,传入对应翻译
    }
    //newConfig = {meter:'m'...}
    map.setUserGenLangLib(newConfig)  //设置自定义语言

如何恢复默认语言设置?



    //初始化时将地图数据设置为默认语言
    var map = new esmap.ESMap({
        lang:esmap.ESLang.CHINESE  
    });

    //将导航语言设置为默认语言
    map.setUserNavLangLib(null)
    
    //将地图内置语言设置为默认语言
    map.setUserGenLangLib(null)   
        

如何动态切换语言?

已经打开地图,在不刷新的前提下切换语言


    map.options.lang = esmap.ESLang.LANGUAGE1

    map.openMapById("yourmapid")

    map.on('loadComplete',function(){
        //map.setUserNavLangLib...  配置导航语言
        //map.setUserNavLangLib...  配置地图内置语言
    })