自造字的转换
牛津高阶双解第四版光盘数据由于使用的是BIG5码,所以文本会有缺字的情况。上次提取数据后,在处理缺字时发现,一些缺字变成了问号,这给还原缺字造成了一些麻烦,因为都成了问号就无法批量按编码还原了。继续对光盘源文件研究,发现这些缺字也是有编码的。BIG5码有三段分区可以让用户自定义字符,这几个分区对应Unicode的私有区,转换后虽然是乱码形式,但都是以独立的编码存在,批量替换不成问题。BIG5码还有一段保留区(0xA3C0-0xA3FE),此区没有开放作造字区用,但光盘版却使用了此区造字,这部分无论以什么编码转换都会变成问号。
所以此次转变思路,转换光盘数据时逐字节读取数据,如果是英文和中文正常编码的字就直接转换为BIG5码输出,如果遇到私有区和保留区的字就不作转换,直接输出为BIG5编码的形式。这样处理后共得自造字180余个,经过一一比对,基本上都能还原,这些字大部分都是不在BIG5码范围内的异体字,个别字重复编码。
音标的转换
除此之外,文本中还有音标部分也是乱码。许多人认为光盘中使用的音标字体为金山词霸音标字体,其实里面的音标字体点击打开就可看到字体名称是Sony phonetic,跟金山音标没有关系。
使用FontCreator打开字体,根据其编码,做了个Unicode音标对照表,用于批量替换。
破折号的缺失及还原
之前有人提到过光盘文本英文例句缺失了破折号,经过对比发现是在本该用破折号的地方空了两个空格,使用正则“<i>[^<>]+?)( )”基本上可以还原。
做了好以上三步,剩下的就是写脚本来批量完成。实际上由于源数据标签有好多错误的地方,比如音标标签少标,或把非音标字符也包括了进去,这些在批量替换前需要先改正。在此过程中发现了光盘数据的一个字头完全错误:
自造字和音标还原后,剩下的一个比较大的问题就是词条粘连的问题了,看论坛上网友贴出的,将近两千条,又无法批量处理,只得暂时作罢,在此先把做好的部分发出来。为了能和纸版数据快速对照,我把词典PDF文件OCR,提取页眉词头和页码,利用文本数据的主词头简单做了个图片版mdx,也一并放出。
链接: https://pan.baidu.com/s/1HYBprhXAT4aoyDKe7u-Evw?pwd=b2tt 提取码: b2tt
链接失效了,能否更新?多谢
既然有人要,我再更新一次吧:链接: https://pan.baidu.com/s/1joETVYTfFU688TaFwaTSww?pwd=i1ar 提取码: i1ar
感恩大佬回復,多謝!
你好,下载这个txt文本能直接用软件转换成mdx吗
不能
感谢作者的钻研,请问资源能更新吗,谢谢了
链接: https://pan.baidu.com/s/15qEscAlMLMN8a_V1wDEZLA?pwd=viij 提取码: viij
谢谢作者更新,非常感谢