游戏/APP的多语言系统设计
多语言需求
游戏或者APP中可以根据不同地区显示不同语言,那么这是怎么实现的呢?要如何处理应用中的图片呢?
思路分析
系统设计

字体翻译显示

多语言收集工具

图例解释
把界面上出现的文字,翻译到多语言表中,系统运行时,去语言表找这个字对应的多语言文字
多语言翻译表: zh_cn.xls ,zh_hk.xls ,ja_jp.xls
简体图集、繁体图集、日文图集中图片名字一样,根据语言配置加载不同的图集,达到图片多语言。
字库要包含多种字形
字库:CommonFont.ttf 字体文件中里面同时包含简体,繁体,日文
但是一般网上下载的字体都是分为 xx简体.ttf,xxx繁体.ttf,但就如何把这两种字体合并到同一个字体中呢?
这需要一个工具 FontCreator
相关知识传送门
字体的编码问题:GB2312(大陆字体编码) BIG5(港澳台字体编码) Unicode(国际标准组织字体编码)
FontCreate
把A字库中的字拷贝到B字库
1、插入-字体,输入需要插入的字体,我这儿输入1

2、我选择的是插入1个字符在最后


3、选择 编辑->特殊粘贴


当然按照上面的方法复制一个字体到另一个字体中
汉字和Unicode码
通过小程序查询文字的unicode码
以我拷贝的“万”字举例,查询“万”简体和繁体的unicode码如下

下面我分别在 方正粗圆简体.ttf 和 方正粗圆繁体.ttf 两种字库中搜索“万” 字的unicode码
在繁体字中查询 在合并的简体字中查询

_________________________________________________________________________________________
在简体字中查询 在合并的简体字中查询

所以可以知道这个所谓的繁体字,只是把简体字转成繁体字,但你输入繁体字它就无法识别了。
原因是这样的:
同一个字在简体和繁体中的字体码是不一样的,如:万在简体中是4e07,在繁体中是842c,而如果要合并的话,那就需要把简体和繁体的字体码分别对应在新的字体文件中。

快速测试字体文件是否包含简繁体
如果想快速地测试字库是否同时包含简体和繁体,可以在Word中输入同一个字的简繁体,如果能正确的显示成你所要的字形,那么这个字库就是同时包含简体和繁体。
文献资料
如何查找汉字对应的unicode码?
在线网站查询 http://www.bangnishouji.com/tools/chtounicode.html
unity的Scene转成文本格式
unity的Label上的文字,也是转成对应的unicode码
游戏/APP的多语言系统设计的更多相关文章
- 丢沙包游戏(或杀人游戏)的C语言实现
丢沙包游戏(或杀人游戏)用C语言实现: 游戏简述: 杀人游戏(或者丢沙包游戏),设定一些人(人数为:num)一起玩游戏,从某个指定的人(设定为:start)开始轮流扔沙包,扔沙包人的下一个人为1,每隔 ...
- 大数据应用:五大地区喜新厌旧游戏APP类别之比较与分析
今天,我们来分享点不一样的资讯.....游戏APP之喜新厌旧排行榜!! 前阵子笔者开发了一套系统可以用来收集亚洲五大地区上架APP的每日排名信息,希望观察出五大地区在APP上的喜好和使用程度之间的相异 ...
- App内切换语言
前几天客户提需求,对App增加一个功能,这个功能目前市面上已经很常见,那就是应用内切换语言.啥意思,就是 英.中.法.德.日...语言随意切换. (本案例采用Data-Bingding模式,麻麻再也不 ...
- 24点小游戏app宣传文案
24点小游戏app宣传文案 游戏背景 24点小游戏是传统的扑克牌游戏,是通过扑克牌来完成的竞争性智力游戏,除了希望能够消磨我们的空闲时间,加强同学们的临机和速算能力,还能够促进我们每个人的大脑和逻辑性 ...
- 如何做一个跨平台的游戏App?
如何做一个跨平台的游戏App? iOS和安卓系统上的应用程序,根据提供的内容不同,按照开发方式和用户体验不同,可区分为app和游戏: 首先从开发方式不同来说明,app开发一般是用操作系统官方提供的开发 ...
- 控制游戏/app使用期限/过期,证书有效期,弹出公告支持离线使用/后端控制,支持Swift、Objective-C集成非常简单,永久免费框架
CertCheck.framework (for iOS) 只能运行于真机上,切勿在模拟器上使用 这是一个控制游戏/app使用期限(到设定的时间无法打开app),或发布弹出公告永久免费的框架,可以全版 ...
- 初探Android逆向:通过游戏APP破解引发的安全思考
如今移动互联网已经完全融入到我们的生活中,各类APP也是层出不穷,因此对于安卓APP安全的研究也尤为重要.本文通过对一款安卓APP的破解实例,来引出对于APP安全的探讨.(本人纯小白,初次接触安卓逆向 ...
- Android app应用多语言切换功能实现
最近在做一个多语言切换的功能,类似于微信的语言切换,搜了下资料基本上都是以下这种: 1. 实现的效果 和微信类似,在设置界面打开切换语言的界面,选择语言后重启 HomeActivity,语言切换完成, ...
- 小项目特供 贪吃蛇游戏(基于C语言)
C语言写贪吃蛇本来是打算去年暑假写的,结果因为ACM集训给耽搁了,因此借寒假的两天功夫写了这个贪吃蛇小项目,顺带把C语言重温了一次. 是发表博客的前一天开始写的,一共写了三个版本,第一天写了第一版,第 ...
随机推荐
- ALV中处理过滤掉的行
有时候我们在ALV的时候,客户会对输出的数据进行二次筛选,这时候如果我们做全选(checkbox)系统会把我们过滤掉得数据也选择: 用下面的method就可避免此问题: DATA:it_rows TY ...
- sharepoint多个NLB的web前段如何进行文件同步?
大家都知道,sharepoint2010服务器场可能有2个或2个以上的web服务器做NLB,有个时候牵涉到上传文件到文件夹(说到这里,有人会说全部以二进制文件保存到文档库啊,但是有些情况不允许的,比如 ...
- 转载:HBASE配置说明
HBase 默认配置 ,原文:http://eclecl1314-163-com.iteye.com/blog/1474286 该文档是用hbase默认配置文件生成的,文件源是 hbase-defa ...
- 一个插件让你在chrome直接运行apk
插件的下载地址: https://chrome.google.com/webstore/detail/arc-welder/emfinbmielocnlhgmfkkmkngdoccbadn?utm_s ...
- Java实现---堆排序 Heap Sort
堆排序与快速排序,归并排序一样都是时间复杂度为O(N*logN)的几种常见排序方法.学习堆排序前,先讲解下什么是数据结构中的二叉堆. 堆的定义 n个元素的序列{k1,k2,…,kn}当且仅当满足下列关 ...
- 【代码笔记】iOS-等待动画
一,效果图. 二,工程图. 三,代码. RootViewController.h #import <UIKit/UIKit.h> @interface RootViewController ...
- 【读书笔记】iOS网络-应用间通信
一,URL方案 URL方案有3个主要用途:根据设备上其他应用的存在与否调整逻辑,切换到其他应用以及响应打开你的应用的其他应用.你还可以通过URL方案从某个站点或是在基于Web的认证流程结束是打开应用. ...
- c中的函数
一. 什么是函数 l 任何一个C语言程序都是由一个或者多个程序段(小程序)构成的,每个程序段都有自己的功能,我们一般称这些程序段为“函数”.所以,你可以说C语言程序是由函数构成的. l 比如你用C语言 ...
- Win8.1RTM英文版安装中文语言包的两种方法
Windows 8.1和Windows Server 2012 R2 RTM出来了,下载了个英文版的安装上了,发现远景上有朋友提供中文语言包,以下提供两种语言包的安装方法: 一.使用lpksetup命 ...
- 1.8 基础知识——GP2.7 识别和卷入干系人(Stakeholder) & GP2.9 质量保证(QA)
GP2.7 识别和卷入干系人(Stakeholder) GP2.7 Identify and involve the relevant stakeholders of XXX process as p ...