2

我开发了一个 uwp 应用程序,该应用程序具有自定义用户控件,允许使用手写笔将用户输入手写识别到文本框中。

它适用于常用词,但是我的用户经常使用技术术语和首字母缩略词,这些术语和首字母缩略词并不总是被识别或根本不被识别,因为它们在我设置为我的 InkRecognizer 的默认识别器的语言中没有特色。

这是我设置默认 Inkrecognizer 的方法:

InkRecognizerContainer inkRecognizerContainer = new InkRecognizerContainer();

foreach (InkRecognizer reco in inkRecognizerContainer.GetRecognizers())
{
    if (recognizerName == "Reconnaissance d'écriture Microsoft - Français")
    {
        inkRecognizerContainer.SetDefaultRecognizer(reco);
        break;
    }
}

以及我如何获得识别结果:

IReadOnlyList<InkRecognitionResult> recognitionResults = new List<InkRecognitionResult>();
recognitionResults = await inkRecognizerContainer.RecognizeAsync(myInkCanvas.InkPresenter.StrokeContainer, InkRecognitionTarget.All);
foreach (var r in recognitionResults)
{
    string result = r.GetTextCandidates()[0];
    myTextBox.Text += " "+result;
}

预期的结果通常也不包含在其他文本候选中。

我已经阅读了 Windows.UI.Input.Inking 的 msdn 文档,但没有发现任何关于这个特定主题的有用信息。围绕手写识别存在的 Channel9 视频以及我的 google-fu 能够想象的结果也是如此。理想情况下,我正在寻找类似于Windows.Inking 中存在的WordList的东西

有没有办法以编程方式将单词列表添加到 Inkrecognizer 的单词池中,或者在 uwp 应用程序中创建用于手写识别的自定义词典?

4

0 回答 0