Posted in: Website/Blog

给网站添加繁体版本:OpenCC

今天利用 OpenCC 的 JS 分支:OpenCC-js 给网站添加了繁体版本。该技术不仅适用于 WordPress,也适用于任何 HTML 网站。

繁体字和简体字并不是一对一的关系,一个简体字可以对应多个繁体字一个繁体字也可以对应多个简体字,当然前者的数量比后者多得多。例如OpenCC-js里,data.cn2t.min.js文件(简转繁)有1MB,data.t2cn.min.js文件(繁转简)只有37KB。因此繁简转换必须基于词语,而不能基于单个汉字。OpenCC是目前功能最为完善的框架。OpenCC-js则是OpenCC的纯JS版本,适合在没有SSH权限的虚拟主机上适用。

除了基于词语转换、支持地方惯用词之外,好的繁简转换还应该有如下功能:

  1. 支持全站HTML内部的文字转换。OpenCC-js直接有内置的HTMLConverter可以使用,无需自己循环。
  2. 支持跳过某些区域(例如日文区域)。OpenCC-js可以跳过所有带有 ignore-opencc 的 Class 的节点。
  3. 根据用户浏览器设置自动选择对应的繁简版本,这个我通过 navigator.language 来实现。
  4. 支持搜索。这里常用的思路是:提交搜索时,利用JS把搜索框内的文字转成原生版本(在我这里就是简体)。

浏览器设置偏好繁体的用户访问本站时直接显示繁体版本。其他用户可以通过页面底部菜单的“繁体版本”查看。


PS:假如想单独输入然后转换某一段话(例如网络发帖),可以使用这个 OpenCC 在线工具


最后更新于 2021 年 6 月 15 日 作者 springwood

Comments (13) on "给网站添加繁体版本:OpenCC"

  1. Google Chrome 91.0.4472.77 Mac OS X  10.15.7

    沒讀到這篇我都沒意識這是繁體字版本,其實對像我這種也讀了大量簡體字書籍或網站的人來說,一旦映入眼簾,繁體簡體好像沒有太大差別。

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注