独立开发之 App 国际化全步骤(二)

关于我:大厂摸鱼 + 业余独立开发,之后会输出深度技术文章 + 独立开发技巧

我的往期技术文章合集:RickeyBoy - Gitbub

我的独立开发 App:iColors - 设计灵感 配色助手

上一篇:独立开发之 App 国际化全步骤(一)

🫙 数据库内容翻译

首先我们需要对我们的数据进行翻译。因为我的 App 「iColors」内部有非常多内容数据,通过 CoreData 进行管理,这些数据都需要进行翻译,这一部分的工作量实际上是非常大,以及非常复杂的。

难点分析

首先比如像 App 主打的中国传统色,其实每一种颜色都需要翻译对应的英文名,而且为了保持调性,需要非常高质量的翻译,尽量让英文名也能尽量保持优雅、简洁。

我截图两个页面举例,可以看到其实中国传统色本身的名字就很有诗意,也有些偏僻;最终翻译出来的结果也要能做到同样的效果。

中文版 英文版

另外,「iColors」数据库整体非常的庞大,除了大量中国传统色之外,还有大量的色组配色,全部都需要高质量的翻译。

中文版 英文版

所以这一个章节我将专门讲一讲我如何把这些内容翻译好。

需要再额外说明的是,如果你的 App 不涉及到特别多本土化的内容,那么其实可以跳过这一步。毕竟这一步的复杂过程,有因为我的独立 App 的特殊之处。

第一步:提取待翻译的文案

首先需要从数据库中,将所有涉及到文案全部整理出来。这一步相对简单,主要是为了方便后续的翻译。

比如我的原始数据是以 Json 的方式存在,通过 Python 脚本就可以将其中需要翻译的名字提取出来,整理成表格形式。

当然,如果你不会写的话,也可以让 ChatGPT 帮你写一个 Python 脚本。需要描述清楚你的原始数据类型,以及你的目标形式,很快就可以有一个非常完美的脚本了。

这一步相对简单,我就不过多废话了。

第二步:翻译文案

整理好了需要翻译的内容之后,接下来就是喂给 ChatGPT,然他帮忙翻译了。如果你是尊贵的 GPT-4 用户,那么可以直接将整个文件直接上传,要不然就分批操作也是没问题的。

在 prompt 阶段,可以说明一些要求,比如要求翻译名 "elegant"、"simple"、"poetic" 等。

虽说翻译完成之后仍旧需要人工对这些翻译进行一个检查,不过有了 AI 的帮助,这个过程也还是轻松很多了。

第三步:将 CoreData 数据对应的文案塞入

核心就是将翻译后的英文,拼接到对应的数据之中,这一步也通过 Python 脚本实现。核心代码如下

python 复制代码
import pandas as pd
import json
​
# 读取翻译文件
file_path = 'xxx.xlsx'
xls = pd.ExcelFile(file_path)
​
data_dict = {}
for sheet_name in xls.sheet_names:
    df = pd.read_excel(xls, sheet_name, header=None)
    # 遍历所有行,并且把其中英文到字典中
    for index, row in df.iterrows():
        key = row[0]  # Value from column 1
        value = row[1]  # Value from column 2
        data_dict[key] = value     
xls.close()
​
# 按照 Json 格式输出
output_file = 'xxx.json'
with open(output_file, 'w', encoding='utf-8') as f:
    json.dump(data_dict, f, ensure_ascii=False, indent=4)

用一张图来说明前三步做的事情:

这里只是以中国传统色来进行说明(实际上除了传统色还有大量色彩组合需要处理),翻译后在原有的数据结构上增加了对应的英文翻译内容。这样就可以进行下一步了,对 CoreData 底层进行升级,从而在 App 内读取到对应的中英文名称。


国际化系列文章的第二篇,主要是简单描述一下对于 App 数据库中的内容,借助 ChatGPT 进行翻译的一个过程。有了翻译后的数据,接下来就需要升级 CoreData 架构,从而在 App 中使用中英文数据了。这些内容会更新在下一篇!

相关推荐
学习3人组13 分钟前
IOS手机使用电脑代理 IP 作为网关/代理出口实现穿越上网
tcp/ip·ios·智能手机
2501_9151063225 分钟前
深入解析HTTPS抓包原理、中间人攻击及反抓包技术攻防
数据库·网络协议·ios·小程序·https·uni-app·iphone
ch_ziyuan1 小时前
跨平台APP封装分发系统搭建:iOS免签+安卓防报毒+IPA签名一体化
android·ios
游戏开发爱好者81 小时前
React Grab工具详解:AI助力Vue3、Svelte和Solid前端元素调试
android·ios·小程序·https·uni-app·iphone·webview
UXbot1 小时前
初创公司如何选择合适的UI工具支撑快速迭代产品?
人工智能·低代码·ios·交互·原型模式
CodeForCoffee1 小时前
iPhone照片导入Mac
macos·ios·iphone
Digitally2 小时前
如何将数据从传音(TECNO)手机迁移到 iPhone?
ios·智能手机·iphone
UXbot2 小时前
轻量级原型工具如何支持Web应用的完整设计到开发链路
android·前端·人工智能·ios·交互·ui设计
sakiko_2 小时前
Swift学习笔记33-多线程与UI渲染
笔记·学习·swiftui·swift
sweet丶16 小时前
iOS 蓝牙开发深入总结
ios·蓝牙