终于(经过多年的推迟)将我的应用程序本地化为英语以外的其他几种语言。
第一个挑战是设计与我的 C++/MFC 应用程序的集成,该应用程序具有数十个对话框和无数字符串。我遇到了两种可能的替代实现:
- 将本地化资源文件编译并部署为 DLL
- 提取所有字符串并将其替换为本地化版本。对于每个
语言将有一个 XML(或简单文本)文件。
就我个人而言,我选择第二种选择,因为在我看来它更灵活。更改很多,但并不难,而且非常重要的是,XML 文件对于译者来说将非常容易修改。
任何意见是极大的赞赏。
Regards,
科斯明·温古鲁
http://www.batchphoto.com/ http://www.batchphoto.com/
我用不同的语言做了一些长期存在的 MFC 项目。
我强烈推荐使用纯资源 DLL 的第一种方法。
原因:
(1) 如果用户执行 XCOPY 安装,他在主可执行文件中始终使用默认语言(英语)。
(2) 如果您没有翻译所有内容(例如,您的发布迟到或忘记了一些字符串),如果使用得当,Windows 资源函数会自动以默认语言返回资源 - 您不必在你自己。
(3) 我个人的观点: (a) XML 文件中的换行符、制表符、空格是你的痛苦**。 (b) 合并 XML 文件更糟糕......
(4) 不要忘记编码。在 XML 中没问题,但您的翻译人员可能会使用不合适的编辑器并损坏文件。
现在来说主要原因:
(5) 您将必须重新排列许多对话框,因为许多字符串较长,例如法语或德语比英语好。并且让所有的静态、按钮……变得更大“以防万一”看起来很糟糕。
另一个提示:花一些钱购买一个翻译工具,它可以导入您的项目/二进制文件并建立翻译数据库。这将在首次发布后摊销。
另一个提示(2):如果可能的话,制作一个不包含任何更改而仅包含多语言功能的版本。另外,如果可能的话,将来:以英语发布您的产品。然后一步完成翻译(每种语言)并发布其他语言。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)