小梦windows phone 8.1开发:语音朗读

使用SpeechSynthesizer类可以实现文本朗读功能,位于 Windows.Media.SpeechSynthesis命名空间。有了它我们就可以实现有声小说了,是不是很爽。下面给出一个将文本块的内容朗读出来的例子,记得在应用的功能里要勾选 麦克风。

关于SpeechSynthesizer类的详细说明请参考:

http://technet.microsoft.com/zh-cn/sysinternals/system.speech.synthesis.speechsynthesizer(v=vs.95).aspx

mainpage页面布局如下:

<Grid>
<StackPanel >
<TextBox x:Name=”txtToSay” Width=”300″ Height=”90″ Margin=”0 2 0 12″ TextWrapping=”Wrap”/>
<Button Content=”开始朗读” HorizontalAlignment=”Center” Click=”OnClick”/>
</StackPanel>
<MediaElement x:Name=”mdPlayer” Width=”0″ Height=”0″ AutoPlay=”True”/>
</Grid>

后台代码如下:

private async void OnClick(object sender, RoutedEventArgs e)
{
if (string.IsNullOrWhiteSpace(txtToSay.Text)) return;
SpeechSynthesizer speech = new SpeechSynthesizer();//实例化对象
// 朗读文本
SpeechSynthesisStream stream = await speech.SynthesizeTextToStreamAsync(txtToSay.Text);//将文本框的内容转化为语音流输出
if (stream != null)
{
this.mdPlayer.SetSource(stream, stream.ContentType);//将语音流设为MediaElement的源。
}

}

关于MediaElement的SetSource方法请查看:http://msdn.microsoft.com/zh-cn/library/windows/apps/xaml/br244338.aspx

时间: 2024-10-05 19:24:45

小梦windows phone 8.1开发:语音朗读的相关文章

windows phone 8.1开发:socket通信聊天

本例用WPF程序做服务器端,windows phone程序做客户端.我们使用基于UDP协议的Socket通信.更多关于socket信息请查看:http://msdn.microsoft.com/zh-cn/library/system.net.sockets.socket(v=vs.110).aspx 我们使用DatagramSocket类完成UDP通信功能. 具体代码如下:(前台代码就不帖出来了,下面只给出后台代码和一些注释.完整源代码会在论坛发出来,地址在文章最后.) socket通信聊天w

WP8.1小梦词典开发1:金山词霸API使用

原文出自:http://www.bcmeng.com/windows-phone-api/ 今天开始小梦给大家分享一下小梦词典开发中几个关键问题,首先我们来看查词功能的实现.小梦词典的查词功能是通过金山词霸的查词API来实现的.首先我们需要申请金山词霸API的key: 金山词霸API的key申请: 申请地址:http://open.iciba.com/?c=api#jhjy   进入后输入您的网站名,网站地址和你的邮箱就可以,key会发送到你的邮箱里.我试过了,网站名和网站地址可以随意填写,只要

WP8.1小梦词典开发2:百度翻译API使用

原文出自:http://www.bcmeng.com/api2/ 小梦昨天和大家分享了WP8.1金山词霸API使用方法,今天继续分享windows phone 8.1中百度翻译API的使用方法.和昨天一样首先我们需要申请百度翻译API的Key: 百度翻译API的Key的申请: 进入 http://developer.baidu.com/ 需要一个百度账号,注册登陆后. 点击右上方的  管理服务台 ,选择开发者服务管理,进入口,选择创建工程就可以.创建工程完成后,你就可以拿到你的Key.和金山词霸

小梦接触编程俩年的感悟

(终于把windows phone版的 2048 搞定了,好开心!虽然2048真心不难,不过还是遇到了几个问题.) 小梦开学就大三了,不是专业的计算机或软件的专业学生.大一上学习了C语言,第一次感受到了编程的美妙,十分感谢谭浩强老师,那本C语言红皮书真心挺棒的,把书上的例子都亲手敲了一遍,然后把习题都做了一遍.之后了解过C++,学过一阵网页前段开发,因为我大一下就有网站了(当然,不是自己写的,用的都是wordpress).后来开始学C#,WPF,windows 8,一直到现在的windows p

windows phone 8.1开发SQlite数据库操作详解

原文出自:http://www.bcmeng.com/windows-phone-sqlite1/ 本文小梦将和大家分享WP8.1中SQlite数据库的基本操作:(最后有整个示例的源码)(希望能通过本站广告支持小梦,谢谢!) 建立数据库 增加数据 删除数据 更改数据 查询数据 (注:为了让每个操作都能及时显示在UI上,所以进行了数据绑定.数据绑定会在后面文章专门讲解,先给出数据类Note,代表一个笔记.含有Name 和content  属性.其代码如下:如果不清楚,我会在之后讲解): names

windows phone 8.1开发 onedrive操作详解

原文出自:http://www.bcmeng.com/onedrive/ 小梦今天给大家分享一下windows phone 8.1开发 onedrive中的一些操作: Windows phone 8.1 中 onedrive 登录 Windows phone 8.1 中 onedrive 文件/照片上传,更新 Windows phone 8.1 中 onedrive文件/照片下载 Windows phone 8.1 中 onedrive文件夹建立,删除,移动,复制 Windows phone 8

windows phone 8.1开发:磁铁|Tile更新

原文出自:http://www.bcmeng.com/tile/ 上一篇给大家分享了toast通知操作的方法,这一篇文章我们就来看windows phone 8.1开发中的磁铁更新.磁铁是windows phone手机的一大亮点,小梦本人也十分喜欢.而更新磁铁也是许多应用都需要的功能.其实磁铁的更新和toast通知的方法几乎是一样的,因为它们的本质都是一个XML文件. 选择磁铁模板: 磁铁的模板十分多,具体可以浏览: http://msdn.microsoft.com/zh-cn/library

windows phone 8.1开发:(消息弹出框)强大的ContentDialog

原文出自:http://www.bcmeng.com/contentdialog/ 在应用开发中我们必不可少的会使用到消息框,windows phone8中的messagebox在windows phone8.1中变成了MessageDialog.使用方法大体相差不大.不过MessageDialog的功能过于简单,许多时候无法满足我们的实际需要.在windows phone 8.1中出现了ContentDialog,ContentDialog不仅可以选择半屏或者全屏展示,里面的内容还可以像一个X

windows phone 8.1开发:锁屏提醒

原文出自:http://www.bcmeng.com/lockscreen/ 之前小梦和大家分享了toast通知,磁铁更新,今天小梦和大家分享windows phone 8.1开发中的锁屏提醒.相比toast通知和磁铁更新,锁屏提醒十分简单.锁屏提醒有俩种:数字提醒和字形提醒,在Windows Phone 8.1中,手机锁屏提醒仅支持“警报”和“注意”状态字形以及数字.向手机发送任何其他字形将清除锁屏提醒.其支持字形如下: 状态 字形 XML 无 未显示锁屏提醒 <badge value="