翻译注意事项.md 3.6 KB

翻译注意事项

请译者务必注意本文提出的事项。

[TOC]

关于换行\n

源代码中以\n表示的换行符,在翻译工具 linguist 中转换直接换行(结尾符号类似音符)。

翻译时,也应该用回车来输入直接换行,而不是插入\n。例:

源代码文本:

这是第一行\n这是第二行

错误的翻译:\n换行

This is the first line\nThis is the second line

正确的翻译格式:直接换行

This is the first line
This is the second line

关于占位符%1

待翻译文本中可能含有%数字格式的占位符。翻译时,也应该保留所有占位符。例:

源代码文本:

原端口号%1被占用,\n切换为新端口号%2。

正确的翻译格式:

The original port number %1 is occupied.
Switching to the new port number %2.

关于MarkDown格式#

有一些源文件,如PagesManager中,会含有一些markdown格式的长字符串。

请务必遵照原文本的格式来编写翻译文本,保留如# 这样的特殊字符。

 为1个全角空格+2个半角空格,用于让qml的md解析器空出一行。直接复制这坨东西即可。)

例:源代码

# 截图OCR

   

屏幕截图,快捷转文字。也支持粘贴图片。

正确的翻译格式:

# Screenshot OCR

   

Screenshot, quick text conversion. Also supports pasting images.

关于字体缩放系数

在 Umi-OCR 界面设计中,很多UI组件的尺寸是和行高绑定的。比如定义一个按钮,宽度为5倍行高,高度为1.5倍行高。这些宽高系数是以中文为基准设定的。

相同单词或句子,有些语言的占地面积与中文并不相同。比如截屏-Screenshot,英文的长度更长。因此,当使用英文UI语言时,要适当缩小文字尺寸以适应UI。即行高不变,调整文字大小。

Size_ 中,有一个待翻译的文本 1.0 。对应到代码的这一行:

property string languageScale: qsTr("1.0")

修改这个数字,如改为 0.92 ,就能调整当前翻译的字体缩放系数。

为了方便测试,可以先打开Umi-OCR全局设置标签页,勾选高级。拉到最底下,developer toolslanguageScale (textScale) 。调整该数字,可以实时预览字体缩放。在这里调整好后,再将数字填入翻译文件中。

转换为纯文本 / 使用机器翻译

如果本地已安装Python,将ts文件拖动到 convert_ts_txt.py 可转为纯文本txt文件,每行对应一条原文本。

或者命令行调用:

convert_ts_txt.py en_US.ts

结果:en_US.tsen_US.txt

(在这个步骤,所有换行暂时以\n表示。后期将txt转回ts时,脚本会自动处理换行。)

然后可以用自动化手段处理 en_US.txt 了。比如问GPT:

请你充当翻译器,协助完成一个软件的UI翻译工作。
下面将输入多行文本。每行是一个原文。请你将其翻译为译文。
请保持原文的特殊格式,原文中的换行、%开头的标识符、mardown等格式予以保留。
首先,将简体中文翻译为英语。

【放文本】

接下来,将翻译好的文本覆盖写回en_US.txt(写之前先备份一下txt)。使用有行号的文本编辑器,检查每行对应的译文是否和原文一致。

然后,将写好的en_US.txt拖入 convert_txt_ts.py ,这将覆盖写入 en_US.txt.ts 。(先备份一下ts)

最后,用 linguist 打开 en_US.txt.ts ,检查、校对翻译,编译为en_US.txt.qm。重命名为en_US.qm,即可导入Umi-OCR测试。