zoukankan      html  css  js  c++  java
  • c# UWP 墨迹 手写识别

      <InkCanvas Name="inkCanvas"></InkCanvas>
            <Button Name="btnRecognize" Content="RecognizeAsync" HorizontalAlignment="Left" Height="104" Margin="0,0,0,0" VerticalAlignment="Center" Width="488" Click="BtnReg_Click"></Button>
    
            <Button Name="btnClear" Content="Clear" HorizontalAlignment="Left" Height="104" Margin="804,56,0,0" VerticalAlignment="Top" Width="488" Click="clear_Click"></Button>
    
    
    
    
    
    
    
    public MainPage()
            {
                this.InitializeComponent();
    
                inkCanvas.InkPresenter.InputDeviceTypes = CoreInputDeviceTypes.Mouse | CoreInputDeviceTypes.Pen | CoreInputDeviceTypes.Touch;
                //  inkCanvas.InkPresenter.SetPredefinedConfiguration
    
    
                InkDrawingAttributes drawingAttributes = inkCanvas.InkPresenter.CopyDefaultDrawingAttributes();
                drawingAttributes.IgnorePressure = true;
                drawingAttributes.Color = Colors.Red;
                drawingAttributes.Size = new Size(4, 4);
                inkCanvas.InkPresenter.UpdateDefaultDrawingAttributes(drawingAttributes);
    
            }
    
    
    
        private void clear_Click(object sender, RoutedEventArgs e)
            {
             
                inkCanvas.InkPresenter.StrokeContainer.Clear(); 
    
            }
    
            private void BtnReg_Click(object sender, RoutedEventArgs e)
            {
                RecognizeAsync();
            }
    
            private async   void  RecognizeAsync() {
    
                //手写识别
                var container = new InkRecognizerContainer();
                //使用墨迹识别
                var result = await container.RecognizeAsync(inkCanvas.InkPresenter.StrokeContainer, InkRecognitionTarget.All);
                //获取识别结果  InkRecognitionResult 对象中还能获取候选字
                try
                {
                    if (result.Count > 0)
                    {
                        var txt = result[0].GetTextCandidates()[0];
                        btnRecognize.Content = txt;
                    }
                }
                catch { }
                // inkCanvas.InkPresenter.InputProcessingConfiguration.Mode = Windows.UI.Input.Inking.InkInputProcessingMode.Erasing;
                return;
    
            }
    

      

    另外如果需要设置擦除模式:inkcanvas.InkPresenter.InputProcessingConfiguration.Mode = InkInputProcessingMode.Erasing;

    语音

    现在很多人都是使用语音输入,把文字转为语音我已经写了一篇博客。
    我们需要先有麦克风
    首先我们需要设置语言
    需要的识别,可以使用web
    告诉用户需要输入

                Language language = SpeechRecognizer.SystemSpeechLanguage;
                speechRecognizer = new SpeechRecognizer(language);
    
                // 使用web
                SpeechRecognitionTopicConstraint web_search_grammar = new SpeechRecognitionTopicConstraint(SpeechRecognitionScenario.WebSearch, "webSearch"); 
                speechRecognizer.Constraints.Add(web_search_grammar);
    
                speechRecognizer.UIOptions.AudiblePrompt = "你想要说什么";
                speechRecognizer.UIOptions.ExampleText = "http://blog.csdn.net/lindexi_gd";
    
                SpeechRecognitionCompilationResult compilation_result = await speechRecognizer.CompileConstraintsAsync();
                if (compilation_result.Status == SpeechRecognitionResultStatus.Success)
                {
                    // 识别
                    IAsyncOperation<SpeechRecognitionResult> recognition_operation = speechRecognizer.RecognizeWithUIAsync();
                    SpeechRecognitionResult speech_recognition_result = await recognition_operation;
                    SpeechRecognitionConfidence confidence = speech_recognition_result.Confidence;//置信度
                    string text = speech_recognition_result.Text;//获取语音
                }

    语音:https://msdn.microsoft.com/zh-cn/library/windows/apps/dn596121.aspx

    http://stackoverflow.com/questions/32153880/how-to-render-inkcanvas-to-an-image-in-uwp-windows-10-application/32551620

    https://blogs.windows.com/buildingapps/2015/09/08/going-beyond-keyboard-mouse-and-touch-with-natural-input-10-by-10/

    fffffffffffffffff
    test red font.
  • 相关阅读:
    nodeJS操作mongoDB常用api
    git命令
    Scala笔记(1)——基本知识
    Akka Java 中文文档
    训练:用gfsh执行常见的任务
    https://confluence.jnj.com/display/AAIM/Enterprise+Agile+Data+Services
    gfsh操作
    java知识
    maven使用之烦人的.lastUpdated文件
    idea相关操作
  • 原文地址:https://www.cnblogs.com/wgscd/p/14919538.html
Copyright © 2011-2022 走看看