qt_add_translation

将 Qt 语言学家 .ts 文件编译成 .qm 文件。

该命令定义在 Qt6 包的 LinguistTools 组件中。通过以下命令加载包

find_package(Qt6 REQUIRED COMPONENTS LinguistTools)

警告:此函数已弃用。请考虑使用基于目标的函数 qt6_add_lreleaseqt6_add_translations

概要

qt_add_translation(<VAR> file1.ts [file2.ts ...]
                    [OPTIONS ...])

如果禁用了 无版本命令,则使用 qt6_add_translation。它支持与此命令相同的参数集。

描述

在作为参数传递给每个 .ts 文件上调用 lrelease,生成 .qm 文件。生成的文件路径被添加到 <VAR>

选项

您可以设置要传递给 lrelease 的其他 OPTIONS。您可以在 lrelease 文档 中找到可能的选择。

默认情况下,qm 文件将放置在当前构建目录(CMAKE_CURRENT_BINARY_DIR)中。要更改此设置,可以将 OUTPUT_LOCATION 设置为源 .ts 文件的属性。

例如,使用以下代码,生成的 .qm 文件在当前构建目录下的 translations 目录中。

set_source_files_properties(app_en.ts app_de.ts
    PROPERTIES OUTPUT_LOCATION "${CMAKE_CURRENT_BINARY_DIR}/translations")

示例

在构建目录中生成 helloworld_en.qmhelloworld_de.qm

qt_add_translation(qmFiles helloworld_en.ts helloworld_de.ts)

l10n 子目录中生成 helloworld_en.qmhelloworld_de.qm

set(TS_FILES helloworld_en.ts helloworld_de.ts)
set_source_files_properties(${TS_FILES} PROPERTIES OUTPUT_LOCATION "l10n")
qt_add_translation(qmFiles ${TS_FILES})

© 2024 Qt 公司 Ltd。此处包含的文档贡献是各自所有者的版权。此处提供的文档是根据自由软件基金会发布的 GNU 自由文档许可证版本 1.3 的条款授予的。Qt 和相应的标志是芬兰以及/或全世界 Qt 公司的商标。所有其他商标均为其各自所有者的财产。