达达's 胡搞瞎搞工作室

此Blog搬到www.unbe.cn 去了,要找我讨论问题请到我的新Blog

FreeTextBox 3.14版改进与汉化

    用过FreeTextBox早期版本的朋友都知道,FreeTextBox编辑内容时想要插入图片只能用"Insert Image"功能,这个功能不支持图片上传,只支持插入图片URL。新版本的FreeTextBox中添加了一个"Insert Image From Gallery"功能,它就像是相册管理,你可以上传图片和管理图片,并且可以把图片插入FreeTextBox中。
   
    可惜这个新的"Image Gallery"窗口是英语界面,并且不能像FreeTextBox上其他按钮一样通过xml文件提供多语言化。用Reflector查看代码就知道,InsertImageFromGallery类里已经把HTML代码写死了,想通过修改资源文件进行汉化也不行了,并且 FreeTextBox现在又是不开源了,没有代码实在很难汉化。

        经过半天的努力,我终于汉化完成啦,哈哈,虽然汉化直接步骤很简单,但是我实践的过程却很曲折,因为这是我第一次使用ILASM,,第一次使用ILDASM,第一次修改IL,第一次学习和尝试去除IL中的强名程序集信息。

    其次,旧的FreeTextBox替换成新版后,发现原先的“Insert Image”按钮点击后竟然不会弹出窗口,而是直接插入一个空图片。我以为是脚本出错了,察看FreeTextBox的脚步后发现,原来“Insert Image”的代码就是被改成直接插入图片了,再看看其他几个js文件,发现在FTB-Pro.js里也有一个InsertImage按钮的点击事件响应代码,并且是弹出窗口的,再看看官方网站上的Demo,也是可以探出一个对话框,并且比以前的插入图片对话框还多了一个预览窗口。为什么我这边就没有呢?实在搞不明白,我就把FTB-Pro.js里的事件代码复制替换掉了FTB-FreeTextBox.js中的,果真按"Insert Image"可以弹出窗口了。

   “Insert Image”的弹出的窗口也是英语界面,不过这次比较好汉化了,直接修改js文件就OK了。

    本来打算详细讲下我是怎么汉化DLL的,不过写了一段发现讲的实在繁琐,其实也就三四个步骤而已(ILDASM转出IL和资源文件,汉化,去除IL强名信息,ILASM重新生成DLL),并且很多博客园的朋友肯定都懂得怎么做的,实在没有必要再啰嗦了。

    下面提供汉化后的FreeTextBox下载(.NET Framework 2.0版本的):

   
FreeTextBox 3.14.rar

   因为本人只用了.NET 2.0版本的,所以也只汉化这一个,如果有朋友自己汉化1.1版本的时候遇到困难,我愿意提供帮助。
   

posted on 2006-05-26 16:32  BG5SBK  阅读(2546)  评论(31编辑  收藏  举报

导航