文章目录
- 1.lupdate更新翻译
- 2.生成*.ts文件
- 3.翻译
- 4.lrelease发布翻译
- 5.在程序中使用翻译文件
- 6.运行
1.lupdate更新翻译
lupdate就是用于扫描pro文件中指定的代码或UI文件中被tr包装起来的文本。
lupdate的使用
lupdate的使用可以使用lupdate --help来查看。
粗略的说一下这个工具的用法:
使用方法:
lupdate [选项] [项目文件]…
lupdate [选项] [源文件 | 路径 | @ lst 文件]…-ts ts 文件 | @ lst 文件
2.生成*.ts文件
lupdate test.pro -ts zh_hans.ts
执行成功之后就会生成zh_hans.ts文件。
在pro文件里面添加
TRANSLATIONS = zh_hans.ts
然后使用lupdate 来生成zh_hans.ts文件
lupdate hello.pro
3.翻译
生成了ts文件后就要进行翻译了。ts文件实际上是类似于xml文件的,我们可以直接打开它来翻译。
3.1 直接翻译
打开zh_hans.ts文件,将你需要翻译的地方,删除属性type=“unfinished”,然后写上你的翻译最后保存文件
如下所示:
3.2使用linguits工具翻译
打开linguits工具,点击文件,选择你的zh_hans.ts文件,会出现如下的弹窗,点击确认
然后选择你需要翻译的地方,输入你想翻译的文字即可,翻译后记得保存。
4.lrelease发布翻译
所谓发布翻译,就是使用lrelease工具将ts文件转换输出不包含多余信息的qm文件(qm文件是二进制文件,非文本文件)。
lrelease zh_hans.ts -qm zh_hans.qm
5.在程序中使用翻译文件
#include "widget.h"
#include <QApplication>
#include <QTranslator>int main(int argc, char *argv[])
{QApplication a(argc, argv);QTranslator tsor; //创建翻译器tsor.load("zh_hans.qm"); //加载语言包a.installTranslator(&tsor); //安装翻译器Widget w;w.show();return a.exec();
}