Woody Home Page
 
   
地区和语言选项
  
2007年4月5日
PA1688设备支持三十多种语言. 我们当中没有人懂中英文外的语言, 来自全世界的用户自告奋勇地协助完成了所有本地化的工作. 因为从开始就做好了计划, 我相信在AR1688上我们可以把多语言支持做的更好.
今天我们将发布0.10版本. 在0.09版本完成了SIP/IAX2协议后, 这一版中我们完成了所有的用户界面. 虽然我们仍然会继续改进和修改程序中的问题, 但是开发人员已经可以开始在这个版本的基础上进行地区和语言定制而不用担心以后会有很大的变化.
基于0.10版本软件API, 请按照以下的步骤增加你自己的语言支持:
0) 全部提到的文件和子目录都位于D:\SDCC\目录下.
1) 从inc\version.h开始, 找到RES_XX部分, 检查你的区域码是否列在其中. 其中XX码依据ISO 3166标准. 如果它已经存在, 你可以直接跳到第4步.
2) 修改tools\namebin项目, 添加你的区域码相关部分到namebin.cpp, 重新编译bin\namebin.exe.
3) 增加DTMF频率和间隔到src\dtmf.c中. 在文件中查找RES_US作为修改代码的参考.
4) 在src\res\web_us下把英文网页翻译成你自己的母语.
5) 翻译src\ui_str.c中的字符串. 你可能读不了其中的中文字符串, 但是没有关系, 增加你自己的语言翻译即可. 在2x16的LCD上, 仍只显示英文, 但是我们可以用点阵LCD显示其他语言字体.
6) 打开src\time.c, 改变时间和日期的显示. 如果你的地区使用夏时制时间也要在这里增加它, 或把你的要求发信给我们. 中国不使用夏时制, 目前只实现了美国的夏时制计时方式, 确认根据夏时制自动调节时钟选项在设置中已经被选中.
 
2007年5月14日更新
跟六周前的第一版相比, 我们在API上更改了一些目录和文件名. 这里把在AR1688 API 0.12版本中增加地区和语言选项的改动列出:
1) 缺省的工作目录从D:\SDCC移动到C:\SDCC. 修改的原因是因为唐丽的新开发用笔记本电脑没有D盘.
2) 原来的src\res\web_us目录改成了src\res\us, 在这里把英文的网页翻译成你的母语.
3) 从检查src\ui_str.c开始, 原来在这个文件里的字符串已经移动到src\res\us和其他的目录如src\res\cn中. 新的文件是menu.hstr.h.
4) 在src\time.c中的英文字符串已经移动到src\res\us\time.h中.
5) 把src\res\us中的3个.h文件翻译成你的母语. 以法语为例, 把相同文件名的文件翻译到src\res\fr目录中, 用于不支持特殊字符(例如é è à ê)的2x16字符型LCD. 把带特殊字符的版本翻译到名为menu_dot.h, str_dot.htime_dot.h文件中, 用于点阵LCD显示. 保持原来的编码不变.
 
2008年2月13日更新
Ferhat最近在他的4x20字符型LCD上利用CGRAM上自定义点阵实现了土耳其语支持. 在他的鼓舞下, AR1688 0.27测试软件上加强了地区和语言选项的支持. 彻底忘记以前的步骤吧, 下面是往AR1688软件中添加你的母语支持的具体步骤, 同时针对字符型LCD和点阵LCD:
1) 在inc\version.h中添加RES_XX, XX代码来自ISO 3166. 在所有步骤中都使用RES_US相关的代码作为参考.
2) 在src\dtmf.c中添加地区使用的DTMF信号频率和间隔.
3) 在src\time.c中修改具体的时间和日期显示格式, 如果使用夏令时的话也在这里添加.
4) 把src\res\us中的英文网页翻译成你的母语, 放在新的src\res\xx子目录下.
5) 把英文的翻译src\res\us\menu.h, time.hstr.h翻译成你的母语, 保留你母语的编码方式. 例如保留ISO 8859-1格式下的法语特殊字符, 保留ISO 8859-9编码下的土耳其语特殊字符.
6) 把需要的ISO 8859-X字符添加到src\font.c, 或者把其它字库更新到程序存储器上保留的256k字节点阵字库空间.
对于没有什么编程经验的用户, 可以只翻译第4和第5步, 我们在收到翻译文件后会协助完成其它步骤的工作.
 
2008年3月11日更新
现在AR1688软件支持中文, 英文, 法文, 意大利文, 罗马尼亚文, 俄文, 西班牙文和土耳其文. 而且Alex在罗马尼亚文和俄文版本中还增加了扩展的字符输入方法. 这样在0.29测试软件中我们有了步骤7.
7) 找到src\res\us\inputmap.h, 把它改成你自己的母语. src\res\ro\inputmap.h是罗马尼亚文例子, src\res\ru\inputmap.h是俄文例子. 不同的inputmap.h被包含在src\menu.c中定义的RES_XX中.
 
2010年5月6日更新
有个法国客户在很多个月前报告了法语版本软件出现话机显示和网页显示混乱的问题. 最近我们终于查明了原因. 但是因为我们都不懂法语, 这个问题暂时还无法解决. AR1688 0.46版本软件即将带着一个错误的法语版本发布. 更糟糕的是, 目前我们只能确认中文版本和英文版本正确, 而其它语言的版本都有可能有类似法语版本的问题.
在我们新的Windows Vista和Windows 7的开发机器上运行的编辑软件Ultra Edit v11.00+和MS Visual Studio 2008是错误的祸首. 平时我们的机器上给non-Unicode的程序选项都是缺省的简体中文. 我们所有.c, .h和.html源文件中的法语特殊字符串就在不知不觉中被转换成了错误的内容. 同时其它语言也可能有类似的问题. 解决方式也容易, 只要记住在编辑法语文件的时候把non-Unicode设置成法语即可. 错误已经造成, 以后一定要小心.
目前我们需要客户们帮助测试0.46版本的其它语言是否正常.

本页面尚无任何评论.

更多选项? 请先登录或者注册. metropolitan-tundra