QML InternationalizationTranslationStrings in QML can be marked for translation using the qsTr(), qsTranslate(), qsTrId(), QT_TR_NOOP(), QT_TRANSLATE_NOOP(), and QT_TRID_NOOP() functions. For example: Text { text: qsTr("Pictures") } These functions are standard QtScript functions; for more details see QScriptEngine::installTranslatorFunctions(). QML relies on the core internationalization capabilities provided by Qt. These capabilities are described more fully in: You can test a translation with the QML Viewer using the -translation option. ExampleFirst we create a simple QML file with text to be translated. The string that needs to be translated is enclosed in a call to qsTr(). hello.qml: import QtQuick 2.0 Rectangle { width: 200; height: 200 Text { text: qsTr("Hello"); anchors.centerIn: parent } } Next we create a translation source file using lupdate: lupdate hello.qml -ts hello.ts Then we open hello.ts in Linguist, provide a translation and create the release file hello.qm. Finally, we can test the translation: qmlviewer -translation hello.qm hello.qml You can see a complete example and source code in the QML Internationalization example. LocalizationLocalization is the process of adapting to local conventions, for example presenting dates and times using the locally preferred formats. Qt Quick supports localization via the Locale object and extensions to the ECMAScript Date and Number types. |