第一次写博客,不知道如何下手,思路也乱,就先聊聊怎么进的园子吧,但愿不会浪费大家太多的宝贵时间>_<。

与博客园结缘应该是大三刚开始的时候。当时学校教务处想开发一个教务安排系统,为了省钱就从系里找人,于是我和另外两个同学就接了下来。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来开发。写的有些乱,没有什么有用的内容,最主要的是不知道该算哪类的文章,也不知道该发布到哪个位置,希望大家不要介意。如果有什么意见或者建议希望能够提出来,共同讨论研究一下^_^。

微软TTS尝试系列之开篇杂谈(仅思路)的更多相关文章

  1. 【VC++技术杂谈004】使用微软TTS语音引擎实现文本朗读

    本文主要介绍如何使用微软TTS语音引擎实现文本朗读,以及生成wav格式的声音文件. 1.语音引擎及语音库的安装 TTS(Text-To-Speech)是指文本语音的简称,即通过TTS引擎把文本转化为语 ...

  2. ASP.NET MVC+EF框架+EasyUI实现权限管理系列之开篇

    原文:ASP.NET MVC+EF框架+EasyUI实现权限管理系列之开篇 前言:博客又有一段时间没有更新了,心里感觉这段时间空空的,好像什么都没有学下,所以就想写博客,所以就有了这个系列,这里当然也 ...

  3. 2019 年起如何开始学习 ABP 框架系列文章-开篇有益

    2019 年起如何开始学习 ABP 框架系列文章-开篇有益 [[TOC]] 本系列文章推荐阅读地址为:52ABP 开发文档 https://www.52abp.com/Wiki/52abp/lates ...

  4. 跟我学: 使用 fireasy 搭建 asp.net core 项目系列之一 —— 开篇

    ==== 目录 ==== 跟我学: 使用 fireasy 搭建 asp.net core 项目系列之一 —— 开篇 跟我学: 使用 fireasy 搭建 asp.net core 项目系列之二 —— ...

  5. 一起学微软Power BI系列-使用技巧(2)连接Excel数据源错误解决方法

    上一篇文章一起学微软Power BI系列-使用技巧(1)连接Oracle与Mysql数据库中,我们介绍了Power BI Desktop中连接Oracle和Mysql的方法,其实说到底还是驱动的问题, ...

  6. 一起学微软Power BI系列-官方文档-入门指南(1)Power BI初步介绍

    我们在前一篇文章微软新神器-Power BI,一个简单易用,还用得起的BI产品中,我们初步介绍了Power BI的基本知识.由于Power BI是去年开始微软新发布的一个产品,虽然已经可以企业级应用, ...

  7. 一起学微软Power BI系列-官方文档-入门指南(2)获取源数据

    我们在文章: 一起学微软Power BI系列-官方文档-入门指南(1)Power BI初步介绍中,我们介绍了官方入门文档的第一章.今天继续给大家介绍官方文档中,如何获取数据源的相关内容.虽然是英文,但 ...

  8. 一起学微软Power BI系列-官方文档-入门指南(3)Power BI建模

    我们前2篇文章:一起学微软Power BI系列-官方文档-入门指南(1)Power BI初步介绍 和一起学微软Power BI系列-官方文档-入门指南(2)获取源数据 中,我们介绍了官方入门文档与获取 ...

  9. 一起学微软Power BI系列-官方文档-入门指南(4)Power BI的可视化

    在前面的系列文章中,我们介绍了官方有关获取数据,以及建模的原始文档和基本介绍.今天继续给大家介绍官方文档中,有关可视化的内容.实际上获获取数据和建模更注重业务关系的处理,而可视化则关注对数据的解读.这 ...

随机推荐

  1. python连mysql时避免出现乱码

    使用python连mysql时候,常常出现乱码,采取以下措施可以避免 1 Python文件设置编码 utf-8 (文件前面加上 #encoding=utf-8)2 MySQL数据库charset=ut ...

  2. [闲谈] 有经验的程序员用Google用得多么?

    关于程序员有没有必要记一些API什么的讨论有很多,我个人觉得能Google到的就没必要刻意去记,可以简单的做个笔记,需要用的时候查一下就好了.真正有必要记的东西,用得多了自然也就能记住了. 文章不难, ...

  3. socket学习笔记——IO口的基本操作(读、写)

    写操作 1 #include <stdio.h> #include <stdlib.h> #include <fcntl.h> #include <unist ...

  4. Linux系统(X64)安装Oracle11g完整安装图文教程另附基本操作

    一:查看本地ssh服务 Linux系统下安装启动ssh服务,下面以CentOS版本Linux系统为例: 1.检查是否装了SSH包 rpm -qa |grep ssh 2.没有安装SSH直接YUM安装 ...

  5. SVN 忽略获取和提交obj、bin文件夹

    一.全局设置的方式(貌似不行) SVN忽略文件夹刚开始用的是这种方式: Settings => Subversion里的Global ignore pattern增加这两项*/bin */obj ...

  6. 【MySQl】MyISAM和InnoDB索引对比

    部分内容转自:http://www.2cto.com/database/201211/172380.html 比较好的文章:http://www.cnblogs.com/hustcat/archive ...

  7. (总结)Web性能压力测试工具之WebBench详解

      PS:在运维工作中,压力测试是一项很重要的工作.比如在一个网站上线之前,能承受多大访问量.在大访问量情况下性能怎样,这些数据指标好坏将会直接影响用户体验.但是,在压力测试中存在一个共性,那就是压力 ...

  8. 《Linux运维趋势》2010-2013年全部期刊下载

    <Linux运维趋势>2010.rar <Linux运维趋势>2011_上.rar <Linux运维趋势>2011_下.rar <Linux运维趋势>2 ...

  9. TCP/UDP详解

    转载:http://www.cnblogs.com/visily/archive/2013/03/15/2961190.html, 作者:望梅止渴 相关: HTTP协议详解  深入理解HTTP协议 T ...

  10. python centos上出现上下键和退格键均为乱码

    出现此问题主要是由于未安装readline,可以使用python自带的readline,具体设置方式为: 1.cd /Python-2.7.9 (下载包后的路径)2../configure3.vim ...