• WPF中用声音读出输入的内容 20120421 17:08 857人阅读 评论(0) 收藏


    在wpf的项目中引入System.Speech


    Code .XAML

    <Window x:Class="ReportWPF.Window5"
            xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
            xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
            Title="Window5" Height="300" Width="594">
        <Grid>
            <Label Content="  Example Of Speech Synthesis in WPF" Height="43" HorizontalAlignment="Left" Margin="73,15,0,0" Name="label1" VerticalAlignment="Top" Width="431" FontFamily="Cambria" FontWeight="Normal" FontSize="25">
                <Label.Foreground>
                    <LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
                        <GradientStop Color="Black" Offset="0" />
                        <GradientStop Color="#FF71FF00" Offset="1" />
                    </LinearGradientBrush>
                </Label.Foreground>
            </Label>
            <Label Height="36" Content="Enter Text for Speech" HorizontalAlignment="Left" Margin="87,89,0,0" Name="label2" VerticalAlignment="Top" Width="191" FontFamily="Shruti" FontWeight="Bold" FontSize="18" />
            <TextBox Height="23" HorizontalAlignment="Left" Margin="300,97,0,0" Name="textBox1" VerticalAlignment="Top" Width="203" />
            <Button Content="Start Voice" Height="35" HorizontalAlignment="Left" Margin="246,160,0,0" Name="button1" VerticalAlignment="Top" Width="89" Foreground="#FFECDADA" FontFamily="Times New Roman" FontSize="18" Click="button1_Click">
                <Button.Background>
                    <LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
                        <GradientStop Color="Black" Offset="0" />
                        <GradientStop Color="#FF36FF00" Offset="1" />
                    </LinearGradientBrush>
                </Button.Background>
            </Button>
        </Grid>
    
    </Window>

    Code .cs:

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Windows;
    using System.Windows.Controls;
    using System.Windows.Data;
    using System.Windows.Documents;
    using System.Windows.Input;
    using System.Windows.Media;
    using System.Windows.Media.Imaging;
    using System.Windows.Shapes;
    using System.Speech.Synthesis;// Add speech namespace in application
    
    namespace ReportWPF
    {
        public partial class Window5 : Window
        {
            public Window5()
            {
                InitializeComponent();
            }
    
            private void button1_Click(object sender, RoutedEventArgs e)
            {
                SpeechSynthesizer synthesizer = new SpeechSynthesizer();//create insatnce of SpeechSynthesizer class
                PromptBuilder promptBuilder = new PromptBuilder();//create insatnce of PromptBuilder class
                promptBuilder.AppendText(textBox1.Text);//AppendText is a method of PromptBuilder class that is parameterized that take string value
                synthesizer.SpeakAsync(promptBuilder);//SpeakAsync is a method of SpeechSynthesizer class that is parameterized that take object of PromptBuilder class
            }
        }
    }

    运行后,效果如下,在文本框中输入内容,点击按钮”Start Voice“后,带上耳机,你将能听到你的内容被声音读了出来


    原文地址:http://mindstick.com/Articles/3fabde3d-5803-4e7d-893c-b7f3eeb5e877/?Example%20of%20SpeechSynthesizer%20class%20in%20WPF


  • 相关阅读:
    Python中if __name__ == '__main__':作用
    mac 用macports给python装opencv
    (转)学习&使用技术的四种层次
    图像处理入门,一些简单的基于像素几何变换和实现
    基于水平投影,垂直投影的字符图像分割思路和代码实现
    转:Cannot make a static reference to the non-static解决办法
    BP神经网络学习和c++例子程序代码
    python中初始化一个数组用来存储多张图片
    假期第二周周总结
    假期第一周周总结
  • 原文地址:https://www.cnblogs.com/configman/p/4657590.html
Copyright © 2020-2023  润新知