sgcUI 包含在每个 sgcUI 版本中

sgcLocalization. 统一的翻译编辑器。 运行时只需一行。

让您的应用程序以客户使用的每一种语言发布。sgcLocalization 会找出窗体、框架和数据模块中的文本,提供一个统一的编辑器,让您手工翻译、交给专业译员或使用 AI 翻译,检查每一条译文,并只需一行代码即可在运行时切换整个应用程序。

  • VCL
  • FireMonkey
  • LCL
  • Delphi 7 至 13
  • C++ Builder
  • Lazarus
已打开项目的 sgcLocalization 翻译编辑器:源文本,德语、西班牙语和法语列,项目状态以及编辑面板
  • RTTI通过 RTTI 扫描窗体、框架和数据模块
  • XLIFF每次导入在应用之前都要经过复核
  • CLDR遵循 CLDR 规则的复数形式
  • sgcT用 sgcT 处理在代码中创建的文本,支持上下文和复数形式

从第一次扫描到下一个版本

sgcLocalization 涵盖整个流程:收集文本、翻译、检查、在运行时切换语言,并在应用程序变化时让译文保持最新。

  • 自动找出文本

    窗体、框架和数据模块中的每个文本属性都会自动找出。

  • 统一的翻译编辑器

    可手工翻译,与译员交换 XLIFF 文件,或让 AI 服务给出译文建议。

  • 运行时只需一行

    sgcSetLanguage('de') 即可切换整个应用程序,无需重启。

  • 包含在 sgcUI 中

    无需额外费用:每个 sgcUI 版本和每款单品包都包含它。

看它运行。

应用程序的全部文本集中在一个项目中,并由一个编辑器完成翻译。

翻译编辑器列出在窗体中找到的文本属性,例如标题、提示和列标题,每种语言一列
收集与翻译

它负责找出文本,由您决定翻译什么

  • sgcLocalization 通过 RTTI 读取您的窗体、框架和数据模块,并列出找到的每个文本属性:标题、提示、列标题、列表项等。忽略规则会排除绝不能翻译的属性,内置的默认规则已涵盖常见的非文本属性。在代码中创建的文本会作为文本片段显式添加,同一个词需要两种译法时可加上上下文,文本随数字变化时可加上复数形式。
法语 XLIFF 文件的导入复核对话框:每一行显示旧文本、新文本、更改类型和问题,并带有用于接受该行的复选框
收集与翻译

通过 XLIFF 与专业译员协作

  • 将一种语言导出为 XLIFF 1.2 文件,交给译员,译文返回后再导入该文件。任何内容都不会被盲目写入:导入会先打开复核窗口,逐行显示旧文本、新文本和更改类型。有问题的行(例如格式说明符与源文本不再一致)会被标出,由您选择应用哪些行。
AI 翻译对话框:目标语言、新增和已更改文本的范围、批次大小,以及可选的术语表和可选的说明
收集与翻译

由您批准的 AI 翻译

  • 让 AI 服务把新增和已更改的文本翻译成您选择的语言,并可使用您自己的术语表以及关于语气和术语的说明。AI 的译文先以建议的形式出现在当前文本旁边,由您逐条接受或拒绝。编辑器通过 sgcUI 的 AI 提供商与 AI 通信。安装 sgcWebSockets 后即可使用 ChatGPT、Claude、Gemini、Ollama 等服务,没有它时,也可以通过一个事件在您自己的代码中调用任何服务。
选中复数文本的翻译编辑器:德语译文的每种复数形式各有一个选项卡,分别是 one 和 other
让译文保持正确

验证与复数形式

  • 译文丢掉一个 %d 或快捷键,只会让使用该语言的用户遇到问题,因此很容易被漏掉。sgcLocalization 会检查格式说明符、占位符、快捷键、换行、开头和结尾的空白、空译文以及复数形式。手工译文、导入的译文和 AI 译文都经过相同的检查。复数文本遵循各语言的 CLDR 规则,因此编辑器只要求该语言所需的形式。
已打开项目的 sgcLocalization 翻译编辑器:源文本,德语、西班牙语和法语列,项目状态以及编辑面板
让译文保持正确

增量翻译

  • 每个项目都有一个状态:新增、已更改、建议、已翻译、已审阅或已废弃。发布时标记一个版本,“自以下版本起新增或更改”筛选器就会显示此后新增或编辑的内容,因此新文本不会被遗漏。已从应用程序中删除的文本会被保留,并作为建议重复使用。
深色主题下的翻译编辑器
运行时只需一行

运行时切换

  • 调用 sgcSetLanguage('de'),或在窗体上放一个现成的语言组合框。整个应用程序会一次性切换,之后创建的窗体也会自动翻译。从右到左的语言还会切换布局方向。

您要编写的代码

窗体无需代码即可翻译。您只需写一行代码来切换语言,并包装在代码中创建的文本。

sgcLocalization 记录在 sgcUI 帮助中:Delphi 和 C++ Builder。 查看全部功能

uses
  sgcLocalization_Engine;

procedure TfrmMain.ShowSelection(aCount: Integer);
begin
  // 将整个应用程序切换为德语
  sgcSetLanguage('de');

  // 在代码中创建的文本
  ShowMessage(sgcT('The order has been saved.'));

  // 同一个词带上下文,当它需要单独的译文时
  lblState.Caption := sgcTC('order status', 'Open');

  // 复数:与当前语言中 aCount 相符的形式
  lblCount.Caption := Format(sgcTN('%d order selected',
    '%d orders selected', aCount), [aCount]);
end;

sgcLocalization 包含在哪些版本中

sgcLocalization 不单独销售,也没有自己的价格。每个 sgcUI 版本,以及作为单品包购买的每款 sgcUI 产品,都免费包含它。

每个 sgcUI 版本

Standard、Professional 和 Enterprise 都包含 sgcLocalization。

查看 sgcUI 价格

每款单品包

单独购买一款 sgcUI 产品,例如 sgcGrid,sgcLocalization 就会随之附带。

查看单品包

试用版

sgcLocalization 随 sgcUI 安装程序一起提供,因此试用 sgcUI 就是试用它的方法。

下载 sgcUI 试用版

无需额外费用。每个 sgcUI 版本,以及作为单品包购买的每款 sgcUI 产品,都包含 sgcLocalization。它不单独销售。

了解 sgcUI

与 sgcUI 的其他产品协同工作。

sgcUI 控件自带 12 种语言的文本。sgcLocalization 则加入您自己应用程序的文本。

今天就试用 sgcLocalization

sgcUI 试用版包含 sgcLocalization 和所有其他 sgcUI 产品。

博客最新动态

查看全部文章 →

您正在查看 eSeGeCe 的 sgcLocalization 视角。

换个角度看看 →
30 天退款保证不满意?可在购买后 30 天内申请全额退款。 查看退款政策