第一次写博客,不知道如何下手,思路也乱,就先聊聊怎么进的园子吧,但愿不会浪费大家太多的宝贵时间>_<。
与博客园结缘应该是大三刚开始的时候。当时学校教务处想开发一个教务安排系统,为了省钱就从系里找人,于是我和另外两个同学就接了下来。Money什么的就不说了,接着了解需求、确定方案和分配任务(第一次做一个整体的小项目,比较乱)。我们三个从大二开始学习C#,因此开发使用的是C#和ASP.NET。当时对我们来说有两个棘手的问题:一是这个系统需要将录入的内容生成教务处给定格式的Word文档,二是需要根据录入的内容在Word中生成多个结构图。由于其中一个同学一直跟着系里的老师做项目,对C#处理Word比较熟悉,但考虑到利用代码直接控制Word绘制结构图不方便且格式不好控制,我们打算使用Visio绘制结构图,最后导出并插入Word的指定位置。因此最后由这位同学根据给定的模板处理Word并负责网页的布局(尽量Word模板相一致),而我和另外一个同学负责研究C#控制Visio绘图并导出。对于C#控制Visio绘图,当时一点都不会,于是查看Visio的帮助文档并且向度娘求助,就在这时发现了伍华聪老师Visio二次开发的博客,于是下载下来研究,从里面摘出自己需要的代码并修改后基本上可以在Visio中绘制结构图了,再加上不断地尝试,最终实现了根据数据库中的数据动态绘制结构图并自动缩放结构图方框的大小。也就是在这时,发现了一个新的天地——博客园,并开始持续关注,感谢伍老师^_^。
写完了入园过程,该进入主题了。
想到弄一个TTS的程序,其实和自己的眼睛有关。眼睛一直不好用,而且经常盯着电脑和手机,所以眼镜片越来越厚,于是想到既然眼睛总盯着电脑不好,用耳朵听总应该可以吧,还能锻炼耳朵。想到这头脑中的第一个想法就是自己整一个程序来读电脑中的文字,第二个想法是看看网上有没有现成的可用。搜了一下,网上是有一些这样的软件,比如懒人读书和方正畅听,但一个效果不太好,另一个资源不好找。还发现一个科大讯飞,语音效果很棒,但当然不会开源,只能体验一把。最后还是打算自己弄一个练练手,虽然不清楚最后能不能完成,效果能不能达到,因为毕竟能力有限,但很值得一试。幸运的是微软有自己的语音引擎,可以在C#中直接使用,倒也省去了很多麻烦。
接下来就是关于这个程序功能(自定义需求)的狂想了,既然是狂想,那就不一定能实现了,但还是得记下来。
1、首先要能够读本地的文件,包括word,txt以及pdf等。
2、可以读取网页上的内容,这个很重要,总不能每次都把网页上的文章复制粘贴到Word中吧。如果可以的话,最好是能够读取网页上指定的内容,例如标题和正文等。由于直接读取网页可能会麻烦,所以打算在程序中输入网址,然后获取网页的内容后分析。
3、由于微软的语音引擎好像只能识别文字(包括中英文等,与引擎有关),因此对于1和2所提供的内容,如果不可读,则提示是否为图片或者链接(即将不可读的内容根据类型替换为指定的提示信息)等,另外有些特殊的标记是不需要读出来的,这涉及到分析并处理获取到的内容。
4、语音引擎貌似断句不是特别准确,微软的引擎虽然能够区分词组,但词组间的时间间隔太明显,听着感觉有断层,而且如果选择不读取标点,则有些需要读的也不会读出,这时需要对这些内容进行替换,显示为文字,例如日期格式有多种,但都有标点符号分隔,需要将日期转换成汉字。
5、可以像有道词典那样取词并读取,或者鼠标放在某些文字上面就可以读取出来。
6、可以将获取的语音生成为可播放的文件,例如MP3,方便存入手机或以后使用。
脑子不太好使,目前就只能想到这些,也算是主要功能吧。由于目前在学习WPF,因此打算使用WPF来开发。写的有些乱,没有什么有用的内容,最主要的是不知道该算哪类的文章,也不知道该发布到哪个位置,希望大家不要介意。如果有什么意见或者建议希望能够提出来,共同讨论研究一下^_^。