最近做项目遇到的需求,在全景图里实现中英文切换。然后自己就想了这么一套方案

1. 首先创建我们的语言包

这里在根目录下创建

中文语言包 lange_cn.xml

<krpano><set_langescene1_name="企业文化大厅"scene2_name="样品展厅1"scene3_name="样品展厅2"hotspot1_name="新款"hotspot2_name="官网链接"hotspot3_name="塑料水壶系列"hotspot4_name="玻璃水壶系列"hotspot5_name="不锈钢系列"/><include url="tour.xml" />
</krpano>

中文语言包 lange_en.xml

<krpano><set_langescene1_name="Honor room"scene2_name="Show Room 1"scene3_name="Show Room 2"hotspot1_name="NEW MODEL"hotspot2_name="Official Webiste"hotspot3_name="Plastic kettle series"hotspot4_name="Glass kettle series "hotspot5_name="Stainless steel kettle series"/><include url="tour.xml" />
</krpano>

这里我们设置了set_lange元素来承载我们的语言属性。

2. 在tour.xml调用我们的语言属性

<scene title="get:set_lange.scene1_name"
>

get:set_lange.scene1_name就是我们调用语言属性的代码,其他地方一样。关于krpano的语法可以到
http://www.krpano360.com/

https://www.jqhtml.com/46046.html
学习相关的知识。

3. 在html里设置入口文件

正常情况下我们的tour.html里是这样的

embedpano({swf: "tour.swf",xml: 'tour.xml',target: "pano",html5: "auto",mobilescale: 1.0,passQueryParameters: true
});

这里就是渲染我们场景的js代码。这里我们需要改动一下,将xml: 'tour.xml'设置动态值(引入我们的语言包文件lange_cn.xml 和lange_en.xml)

比如我们用本地存储(localStorage)来记录我们当前的语言。

var tour_xml = 'lange_en.xml';
if(localStorage.getItem('lange') == 0){tour_xml = 'lange_cn.xml'
}
embedpano({swf: "tour.swf",xml: tour_xml,target: "pano",html5: "auto",mobilescale: 1.0,passQueryParameters: true
});

到这里就基本完成了,至于怎样切换中英文这个就不用多说了,无非就是一个点击事件。

krpano实现多语言切换相关推荐

  1. 网页中英文语言切换解决方案

    网页中英文语言切换解决方案 参考文章: (1)网页中英文语言切换解决方案 (2)https://www.cnblogs.com/seasons1987/archive/2012/10/09/27163 ...

  2. Java Web的Struts2的多语种网站的多语言切换实例

    先看图图: 图1: 图2: 图3: 图4: 一 首先下载Properties Editor插件,该插件是支持中文的资源文件编辑器:MyEclipse 10.6 以上不用安装该插件,使用自带资源文件编辑 ...

  3. html怎么实现多语言图片切换,JavaScript实现--中英语言切换功能

    最近弄的项目是面向国际的,所以老总说要有语言切换功能.第一感觉好像不难吧 网上查了下,感觉实现方法就2种: 一:2个版本的HTML.至于怎么切换,方法也很多. 不过这种方法,除了笨,我实在不知道用什么 ...

  4. 安卓换语言java_Android应用程序的语言切换

    最近项目中用用到语言切换功能,第一想到的就是资源文件,没错. 在资源文件中新建一个文件夹values-en,在里面新建一个strings.xml,把默认values文件夹中的strings.xml中的 ...

  5. qml中loader加载页面会闪屏_Qml动态语言切换

    此方法需要在Qt5.10或更高版本实现, 在Qt5.10或更高版本实现, 在Qt5.10或更高版本实现 重要的事情说三遍 首先在工程文件.pro中加入TRANSLATIONS = zh_CN.ts ...

  6. WPF ComboBox 使用 ResourceBinding 动态绑定资源键并支持语言切换

    WPF ComboBox 使用 ResourceBinding 动态绑定资源键并支持语言切换 独立观察员  2021 年 8 月 23 日 我们平常在 WPF 中进行资源绑定操作,一般就是用 Stat ...

  7. Delphi XE2 之 FireMonkey 入门(18) - TLang(多语言切换的实现)

    一个小小的 TLang 类, 实现多语言切换, 挺好的. 它的工作思路是: 1.首先通过 AddLang('语言代码') 添加语言类别, 如: AddLang('en').AddLang('cn'). ...

  8. mfc oninitdialog 中的hwnd == null_在SOUI中使用动态多语言切换

    动态语言切换是很多国际化产品的需求,SOUI之前的版本支持静态多语言翻译,通过在程序启动时设置好语言翻译模块,在程序中打开的UI都会自动调用该翻译模块进行文字翻译,但是不支持运行进语言切换. 最近几个 ...

  9. android 指定语言的资源,Android国际化多语言切换

    最近工作中突然要求要项目进行国际化,之前没遇到过.但是也很简单呀,只需要把添加一个相应语言的的strings.xml的资源文件就好了,不是吗?这样只要切换系统语言就能切换app的文字语言了. 但是由此 ...

最新文章

  1. go net.conn读取请求头信息_go语言网络编程socket sever的实现
  2. 实现当UILable的内容超出其范围后自动滚动效果
  3. Bootstrap 表格
  4. ocp 043 第十三章:管理资源
  5. 利用对象存储多种方式 保障OSS数据安全
  6. [Swift通天遁地]一、超级工具-(13)使用PKHUD制作各种动态提示窗口
  7. 全球首款5G手机来了?三星Galaxy S10 5G版或于4月5日开卖
  8. npm配置镜像、设置代理
  9. R语言-实用功能性语句1
  10. java读取redis数据_Java连接redis操作数据
  11. 使用Postman工具进行简单的Get/Post测试
  12. 2019年我能变强组队训练赛第十场 C Criss-Cross Cables(优先队列模拟)
  13. luci编程 openwrt_openWRT之Luci简介
  14. 【java】把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。 输入一个非减排序的数组的一个旋转,输出旋转数组的最小元素。
  15. Stable Fluids / Real-Time Fluid Dynamics for Games 笔记
  16. java获取视频首帧图片用于界面展示
  17. 每日一题.每日一练 .6.水壶问题(写完感觉自己能去讲课版)
  18. 初识OpenGL (-)坐标系统(Coordinate System)
  19. 11款免费的Web安全测试工具
  20. 【设计模式】之单例模式中的饿汉模式和懒汉模式

热门文章

  1. HEVC学习-帧内预测-initAdiPattern函数
  2. 微信程序开发小程序交互
  3. ezuikit-js萤石云
  4. AngularJS 控制器
  5. 52PJ官网 基础教程第二课的分享(OD)_Part2
  6. Excel使用VBA动态设置打印区域
  7. 【CUDA开发】CUDA的安装、Nvidia显卡型号及测试
  8. 华为android系统管理,安卓系统即将迎来封闭管理?华为首先发起,网友:流畅度更重要...
  9. 可获取公网IP的网址
  10. Linux 设备模型基本概念 (一)