小梦windows phone 8.1开发:语音朗读
使用SpeechSynthesizer类可以实现文本朗读功能,位于 Windows.Media.SpeechSynthesis命名空间。有了它我们就可以实现有声小说了,是不是很爽。下面给出一个将文本块的内容朗读出来的例子,记得在应用的功能里要勾选 麦克风。
关于SpeechSynthesizer类的详细说明请参考:
mainpage页面布局如下:
<Grid>
<StackPanel >
<TextBox x:Name=”txtToSay” Width=”″ Height=”″ Margin=” ″ TextWrapping=”Wrap”/>
<Button Content=”开始朗读” HorizontalAlignment=”Center” Click=”OnClick”/>
</StackPanel>
<MediaElement x:Name=”mdPlayer” Width=”″ Height=”″ 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
小梦windows phone 8.1开发:语音朗读的更多相关文章
- windows phone 8.1开发:socket通信聊天
本例用WPF程序做服务器端,windows phone程序做客户端.我们使用基于UDP协议的Socket通信.更多关于socket信息请查看:http://msdn.microsoft.com/zh- ...
- C# Windows Phone 8 WP8 开发,取得手机萤幕大小两种方法。
原文:C# Windows Phone 8 WP8 开发,取得手机萤幕大小两种方法. 一般我们在开发Windows Phone App时,需要取得萤幕的大小来自定义最佳化控制项的大小,但是开如何取得萤 ...
- WP8.1小梦词典开发1:金山词霸API使用
原文出自:http://www.bcmeng.com/windows-phone-api/ 今天开始小梦给大家分享一下小梦词典开发中几个关键问题,首先我们来看查词功能的实现.小梦词典的查词功能是通过金 ...
- WP8.1小梦词典开发2:百度翻译API使用
原文出自:http://www.bcmeng.com/api2/ 小梦昨天和大家分享了WP8.1金山词霸API使用方法,今天继续分享windows phone 8.1中百度翻译API的使用方法.和昨天 ...
- Windows Phone 8初学者开发—第1部分:系列介绍
原文 Windows Phone 8初学者开发—第1部分:系列介绍 您好,欢迎来到这个包含35课为Window Phone 8平台创建应用程序的系列教程.我叫Bob Tabor,在过去的11年中我一直 ...
- windows phone 8.1开发 onedrive操作详解
原文出自:http://www.bcmeng.com/onedrive/ 小梦今天给大家分享一下windows phone 8.1开发 onedrive中的一些操作: Windows phone 8. ...
- windows phone 8.1开发SQlite数据库操作详解
原文出自:http://www.bcmeng.com/windows-phone-sqlite1/ 本文小梦将和大家分享WP8.1中SQlite数据库的基本操作:(最后有整个示例的源码)(希望能通过本 ...
- windows phone 8.1开发:磁铁|Tile更新
原文出自:http://www.bcmeng.com/tile/ 上一篇给大家分享了toast通知操作的方法,这一篇文章我们就来看windows phone 8.1开发中的磁铁更新.磁铁是window ...
- windows phone 8.1开发:锁屏提醒
原文出自:http://www.bcmeng.com/lockscreen/ 之前小梦和大家分享了toast通知,磁铁更新,今天小梦和大家分享windows phone 8.1开发中的锁屏提醒.相比t ...
随机推荐
- linux的Make使用的重定向
Linux中,脚本语言环境中,即你用make xxx即其他一些普通linux命令,比如ls,find等,不同的数字,代表不同的含义: 数字 含义 标准叫法 0 标准输入 stdin = ...
- Java异常处理机制以及try-catch-finally-return执行顺序
一,简单描述: 当出现程序无法控制的外部环境问题(用户提供的文件不存在,文件内容损坏,网络不可用...)时,JAVA就会用异常对象来描述. 二,JAVA中用2种方法处理异常: 1.在发生异常的地方直接 ...
- 解决IIE8不支持媒体查询的方法
最近在解决UI问题时碰到以下浏览器不兼容性问题(本人属于UI业余操作者,很多想法就很业余了): 问题:IE8及其以下低版本IE浏览器在缩小窗口时,UI没有按照相应的要求显示窗口缩小时对应的布局:其他浏 ...
- PHP 数组处理
一:PHP 定义数组: PHP 代码 不能再 空的位置 打字 会报错 定义数组 方式1 $cars=array("Volvo","BMW","T ...
- JavaScript刷新页面的方法(包括Frame框架的刷新方式)
JavaScript刷新页面的方法 1 history.go(0) 去指定的某页 2 window.location.reload()刷新当前页面 window.location.relo ...
- web前端简介
Web标准: 结构(硬件):xhtml html 表现(软件):css 行为(插件):dom js html:超文本标记语言 (Hyper Text Markup Language) xhtml:可 ...
- 事件机制-Spring 源码系列(4)
事件机制-Spring 源码系列(4) 目录: Ioc容器beanDefinition-Spring 源码(1) Ioc容器依赖注入-Spring 源码(2) Ioc容器BeanPostProcess ...
- android学习16——library project的使用
library project和普通的project没有区别.用如下命令新建的一个工程. android create project --target 3 --name MyActivity --p ...
- 架构师之路——里氏替换原则LSP
定义: 如果对每一个对类型为S的对象o1,都有类型为T的对象o2,使得以T定义的所有程序P在所有的对象o1都代换成o2时,程序P的行为没有发生变化,那么类型S是类型T的子类型. 内容: 里氏替换原则通 ...
- 从项目经理的角度看.net的MVC中Razor语法真的很垃圾.
我们知道,Razor语法中我们可以直接使用@if(){}等代码段,这使得.net程序员在写模版时更容易了. 对比如下: 语法名称 Razor 语法 Web Forms 等效语法 代码块(服务端) @{ ...