请译者务必注意本文提出的事项。
[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.
#
有一些源文件,如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 tools
→ languageScale (textScale)
。调整该数字,可以实时预览字体缩放。在这里调整好后,再将数字填入翻译文件中。
如果本地已安装Python,将ts文件拖动到 convert_ts_txt.py
可转为纯文本txt文件,每行对应一条原文本。
或者命令行调用:
convert_ts_txt.py en_US.ts
结果:en_US.ts
→ en_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测试。