Qt Linguist 和 Google 翻译

7

我正在寻找一种方法,可以通过使用Qt语言家和已存在的翻译服务(例如Google翻译)进行某些非常粗糙的翻译来作弊。

Google翻译有公共API,所以我希望有人已经尝试过这样做,但我似乎找不到它。 有人看到过类似的东西吗?

我并不期望得到很棒的翻译 - 目前只是为了证明概念而展示。


2
希望能够进入http://thedailywtf.com/的首页? :p - UncleBens
哈哈,完全不是 - 我想要的只是一些看起来逼真的翻译,这样我就可以为我们的应用程序宣传Qt本地化系统。因此,西班牙语翻译应该看起来像西班牙语,依此类推。 - Thomi
5个回答

3
您可以使用lconvert将文件转换为.po格式。
lconvert -if ts -of po -o myFile.po myfile.ts

然后通过Paul Dixon的翻译器运行它们,再次使用lconvert进行转换。

lconvert -if po -of ts -o myFile.ts myfile.po

3

我已经编写了一个使用gettext .po文件来实现此功能的开源应用程序,修改成Qt Linguist文件也不难。演示和php源代码可在http://pepipopum.dixo.net找到。


链接已失效,有没有新的来源? - ymoreau
Google Translate API已经被设置为付费服务,因此演示已下线。如果您搜索pepipopum,您应该会找到许多分支。 - Paul Dixon

1

我以前没有见过这样的东西(可能是因为自动翻译可能会产生不太好的结果),但实现起来应该不难。

lupdate 工具生成的 .ts 文件实际上是纯XML文件(甚至不是很复杂 - 只需在文本编辑器中打开一个文件并查看即可)。因此,您可以使用各种XML工具/库来编辑文件中的 <translation> 元素。Qt 甚至附带了一个


是的,这正是我计划的 - 一旦代码可用并运行良好,我将发布它。再次强调,目的不是为了生成可用的翻译,而是为了产生漂亮的翻译数据,仅供演示目的。 - Thomi

0

看一下 http://omegat.org

它集成了谷歌翻译、自动词典查找、翻译记忆等等功能。

OmegaT 可以读写许多格式,包括 .po 和 Open Office(一种 XML 变体)。不确定是否支持一般的 XML,但有类似 xml2po 的工具可用。


0

是的,这是可能的;而且实际上并不难!

我以前写过一个 C++ API,使用 Google Translate Ajax Javascript API(这是唯一现有的 Google Translate API),使用 libCURL 进行粗略翻译,为未完成的游戏提供支持。

由于 Qt Linguist 根据上面的人所说使用 XML 文件,因此将它们翻译并编写到有效的 XML 文件中应该相当容易!


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接