2010-05-04 97 views
0

我在我的C++使用HTML_Template的模板 - 基于Web的应用程序(不要问)。我之所以选择这个,是因为它非常简单,而且事实证明这是一个很好的解决方案。HTML模板和翻译

现在唯一的问题是我希望能够在HTML模板中包含可翻译字符串(HTML_Template并不真的支持这一点)。

归根结底,我想是有一个包含所有字符串翻译单个文件。然后可以将其发送给翻译器并将其重新插入应用程序并根据用户在设置中选择的语言来使用。

我已经来回一些选项,并想知道别人的感觉是最好的选择(或者如果有未列出一个更好的选择)

  1. 扩展HTML_Template包括一个标记用于保存要翻译的文字字符串。因此,例如,在HTML我会把类似

    <TMPL_TRANS "this is the text to translate"/>

  2. 使用一个完全独立的方案,翻译和预处理的HTML文件来生成最终的模板文件(没有的特殊翻译行话)。例如,在预处理后的文件,翻译文本应该是这样的:

    {{this is the text to translate}}

    ,并最终会是什么样子:

    this is the text to translate

  3. 不要做任何事情,让译员会在html和js文件中找到要翻译的字符串。

回答

0

你可能要考虑数组,如果没有的话。

翻译字符串的常用实现是使用表和索引。一个索引用于该语言,第二个索引用于该字符串。创建返回基于这两个指数的字符串的函数:
const std::string& Get_String(unsigned int language_index, unsigned int string_index);

每种语言将有串(或const char *)的表。会有一个指向语言表的指针表,每种支持的语言都有一个表。

最大的痛苦是将现有代码转换为使用此系统。

希望这会有所帮助。