我给一个台湾客户做过简体中文官网的繁体版本。第一版是把整站文案丢进一张逐字映射表,结果"头发"变成"头發"、"面条"变成"面條","干部"倒恰好撞对了"幹部"。客户直接截图发来三处,说读起来很像机翻。那一轮我返工改了三天——文案里一共 4300 多条字符串,其中 200 多处需要人工判断该用哪个字。后来才想明白:简繁转换难的不是字形怎么映射,而是同一个简体字背后往往有几个不同的繁体来源,必须靠语境挑。
一、"一简对多繁"为什么必然出错
简化时把几个不同的繁体并成了一个简体,反推就没有唯一解:
| 简体 | 可能的繁体 | 按语境区分 |
|---|---|---|
| 发 | 發 / 髮 | 发展→發展;头发→頭髮 |
| 后 | 後 / 后 | 后面→後面;皇后→皇后(不动) |
| 干 | 幹 / 乾 / 干 | 干活→幹活;干燥→乾燥;干预→干預 |
| 面 | 面 / 麵 | 前面→前面;面条→麵條(麪是异体字,规范写作麵,但我用的工具在香港模式下给的就是麪條) |
| 台 | 臺 / 檯 / 颱 | 台湾→臺灣(也见"台灣"写法);台风→颱風;吧台→吧檯 |
字符级映射对这类字只能选一个,所以必然错掉一批。真正能压住错误率的是词组级词典:"头发"作为一个词命中"頭髮","发展"命中"發展",靠上下文而不是靠单字决定。这也是我不再自己写替换表、改用基于 OpenCC 词库的方案的原因。
对应关系不是我想当然的:一简对多繁的清单以《简化字总表》(1986 年重新发布)为准,《通用规范汉字表》(2013 年发布)的附件一《规范字与繁体字、异体字对照表》给出规范字与繁体字、异体字的对照。我做术语表时按这两张表核过一遍,机器给出的结果只当建议。
二、繁体内部并不统一
面向台湾和面向香港的稿子,用的字和词都不是同一套。台湾地区的习惯用词会把"软件"写成"軟體"、"网络"写成"網路",这属于词汇层差异,不是把某个字换成另一个字就能得到的。所以我现在分两遍出:先出通用繁体,再按投放地选台湾正体或香港繁体重跑一遍,最后拿其中一份当基准稿去校另一份,把混用的地方统一掉。
三、我实际的处理流程
- 导出简体原文,先把不该动的内容隔开:代码片段、变量名、URL、邮箱、产品型号。这些一旦参与转换就会坏掉,我用占位符先替走,转完再贴回来。
- 整段贴进简繁体转换,选方向和地区模式——具体提供哪几档(通用繁体、台湾正体、香港繁体),以工具页面实际显示的为准。大段文本不用拆,但转完我一定做一次行数和字符数核对。
- 把结果和原文并排 diff,只盯含"发、后、干、面、里、台"这几个字的行,逐行确认。
- 专有名词单列一张表:人名、地名、品牌、作品原名。这类一律不让机器改,比如"皇后"不能动,"台"作地名或机构名时要不要写成"臺灣",取决于对方给的用字规范,必须人工定稿后写进术语表复用。
- 发之前用客户给的样本反查术语一致性:同一份稿子里"影片"和"视频"、"軟體"和"軟件"不能同时出现。
四、我的复核清单和它的工作量
三天返工之后,我把复核从"通读一遍"拆成了几项有明确数量的固定动作,不然这件事根本做不完:
| 检查项 | 那一版里的量 | 处理方式 |
|---|---|---|
| 含"发、后、干、面、里"的行 | 186 行 | 逐行看,只判断字选得对不对 |
| 人名、地名、品牌、作品原名 | 41 条 | 写进术语表,机器不参与 |
| 标点(引号、书名号、顿号) | 约 200 处 | 按投放地规范统一处理一遍 |
| UI 短文案(有溢出风险) | 55 条 | 转完回到界面截图比对 |
| 代码、变量、URL 占位符 | 12 段 | 转换前后各校验一次是否原样 |
第一次整理这张表花了我大半天,第二次同一个客户的增量文案只剩 200 多行要过,术语表直接复用,成本一下就掉下来了。
五、容易忽略的细节
- 繁转简大多无损,但不是全部:多繁对一简的方向确实安全得多,可"著/着""萬/万""醜/丑""於/于""瞭/了""藉/借"这一类仍要按词判断——OpenCC 在繁转简方向也专门设了词组层,就是为了这些。我的做法是对这几个字做一次全文抽查,而不是整篇放行。
- 版面溢出的真实原因:简繁都是全角一字宽,单个字符的度量不变;溢出是因为词长变了——"内存"变"記憶體"多一个字,"数据"在港台常写作"資料","服务器"在台湾常写作"伺服器"。定宽按钮和标签页最容易顶出来。
- 字幕的口径要先说清:我按"条"算,一集 45 分钟大约 900 条字幕,写成 .srt 是 900×3 = 2700 行(每条一个序号行、一个时间行、一个文本行)。序号行和时间行那 1800 行是纯数字,转换不动它们,可以排掉;剩下 900 行文本仍要逐条看有没有整行被替换或时间码错位,抽 10 行只够查格式,不够查字。
- 异体字混用:同一篇里出现两种写法,读者一眼就觉得不专业。转换之后统一用词比转换本身更花时间。
- 古籍和诗词:这类文本里冷僻对应很多,还有避讳字和通假字,机器转完必须逐句校。
- 混排怎么查:改到一半的稿子里常常两种写法同时出现,通读很容易漏。我的做法是把两份地区版本都跟同一份简体原文对齐,只看不一致的行,比逐字读快得多。
- 敏感内容放本地:客户名单、合同文本这类东西,我不会经过任何后端。这是挑选工具时的前提条件。
六、常见疑问
Q:转换会不会出错,能直接发布吗?
我没做过统计,只能说定性判断:新闻、说明类常规文本里明显错字很少,但一简对多繁和地区用词永远有剩余错误。我那次 4300 多条里有 200 多处要人工定夺,集中在"发、后、干、面、台"这几个字上。对外发布、有客户在读的稿子必须过一遍人工复核,内部参考可以直接用。
Q:会破坏原来的换行和段落吗?
以工具页面的实际输出为准,我不替它打包票。我自己的做法是转完比一次行数:那 4300 多条字符串唯一一次串行是我自己贴错了源文件,不是转换改的。
Q:能同时出台湾和香港两套吗?
我是分两次跑、每次选对应地区模式,再 diff 两份结果,把差异整理成术语表。可选项有几个以页面显示为准;同一份文案要供两个地区时,这张表下次能直接复用,越用越短。
Q:能顺便得到拼音或注音吗?
它只管字形和用词,不负责读音。要拼音得用汉字转拼音那一类工具。
Q:文本很长会不会被截断?
我单次跑过整本手册的量没出问题,但更稳的做法是分章节处理,最后做一次字符数核对,防止整段漏掉却没发现。
那三天返工换来的结论是:简繁转换的成本不在"转",而在知道该复核哪几处。把容易出错的单字列成清单、把专有名词单独管起来,两轮就能收敛。把剩下九成依赖格式规则的机械替换交给程序,人只管那不到一成依赖语境的判断——分工摆对之后,这类活儿就不再需要三天。