3

我正在编写一个当前是纯 QT4 应用程序的应用程序。它旨在在 Linux 和 Windows 上干净地运行。

但是我计划在未来将它集成到 KDE 中,这会出现本地化/翻译的问题。

QT4 使用自己的 tr()/tr().arg().arg() 机制和 .ts/.qm 文件。KDE4 使用 gettext 和 i18n/i18np 机制和 .po 文件。

如何轻松地在我的 QT4 应用程序中使用 KDE4 的机制,而无需现在将其与 KDE 紧密集成(显然使其无法在 Windows 上运行)?

有可能吗?

谢谢!

4

2 回答 2

2

从 4.5 版开始,Qt 将同时支持 .po 和 .xliff;

http://doc.trolltech.com/4.5/qt4-5-intro.html#qt-linguist-improvements

于 2009-01-08T14:53:34.130 回答
0

我想你只需要选择一个并使用它,如果它是一个跨平台的应用程序,我会使用 QT 的方法。原因是 KDE 用 i18*() 宏包装它的国际化字符串,而 QT 使用 tr() 宏,因为一个宏不能产生另一个宏,除非你的代码中到处都是#ifdef,否则没有办法。巨大的弦桌......两者都很糟糕。

于 2009-01-08T14:05:28.533 回答