资 源 简 介
为onlinedict chrome扩展提供离线取词功能
由于目前大多数词典都不能为chrome屏幕取词,因此相对来说,onlinedict非常有用,但是它严重依赖于dict.cn,只能在线取词。
我觉得可以改进的有两个地方:
第一, 不要通过选中单词进行取词,可否通过鼠标移动消息进行取词,
我研究了相关的api,发现目前的webkit中鼠标消息中只能得到对应的结点,然后
得到整段文字而无法获取这段文字内部的排版,进而得到准确的单词。而在
firefox中有rangeoffset这样的属性,方便我们定位到整段文字中的某个单词
第二,就是建立一个离线数据库,给用户一个从离线数据库取词的机会,在没有
网络的情况下仍然能够使用。
我已经尝试把所有dict.cn中再vocabulary.txt中的所有单词的解释下载下来了,
建立一个文本数据库,然后在插件安装以后导入本地数据库。
以后取词的时候首先通过这个数据库查询如果查到了就优先使用这个结果否则再
通过网络查询,然后将查询的结果保存到数据库中。
现在的问题有:
1. 第一: 这个数据库太大了,要17M
1. 第二: 我导入的时候试了多次总是不成功,尤其是在windows下(用的是chrome
plus 最新版1.3.7), 而在linux下似乎没问题,正在导入。
第三: 因为我们已经获取到html文件了,就无法使用iframe来显示,只能通过div
标签,结果就是无法读出结果了,因此我想给用户一个选项,是网络词库优先还
是本地词库优先,如果是网络优先就直接用现在的4.2版本中的方法,如果是本地
词库优先那么就使用div标签。
现在我数据库正在建立,建成以后就可以使用了,只是不知道怎么提交。