WPF手写识别

使用微软自带的识别dll.

IACore.dll\IALoader.dll\LAWinFX.dll\Microsoft.Ink.dll\Microsoft.InkAnalysis.dll

强调内容手写识别用到WPF中的InkCanvas控件,使用InkCanvas.Strokes来收集用户的手写笔迹。通过RecoginizerContext识别笔迹。

新建分析上下文环境,传如Ink中的笔迹,执行分析即可得到手写识别的结果,结果存放在RecognitionAlternates中,遍历该集合即可得到识别结果。具体代码如下:

MemoryStream ms = new MemoryStream();
canvas.Strokes.Save(ms);//canvas为InkCanvas
Microsoft.Ink.Ink ink = new Microsoft.Ink.Ink();
ink.Load(ms.ToArray());
string[] resultArray = null;//存放识别的结果
using (Microsoft.Ink.RecognizerContext myRecoContext = new Microsoft.Ink.RecognizerContext())
{
    Microsoft.Ink.RecognitionStatus status;//识别的结果状态,可用于判断是否识别成功
    Microsoft.Ink.RecognitionResult recoResult;
    myRecoContext.Strokes = ink.Strokes;
    try
    {
        recoResult = myRecoContext.Recognize(out status);
        Microsoft.Ink.RecognitionAlternates als = recoResult.GetAlternatesFromSelection();
        int resultCount = als.Count;
        resultArray = new string[resultCount];
        for (int i = 0; i < resultCount; i++)
        {
           resultArray[i] = als[i].ToString();
        }
    }
    catch (Exception ex)
   {
       System.Diagnostics.Debug.WriteLine(ex.ToString());
   }
}
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值