2015-11-09 2 views
0

Je fais une application de feuille de calcul mathématique où vous pouvez écrire dans la réponse ci-dessous le problème en utilisant un InkCanvas. Le problème est que si vous écrivez un "1" comme la plupart des gens le font, il ressemble à "|", et est reconnu comme une barre verticale. Il semble qu'il devrait y avoir un moyen de définir le InkRecognizerContainer pour reconnaître seulement les nombres, mais je ne trouve aucun moyen de le faire. Est-ce possible?InkCanvas reconnaître seulement les numéros

Voici mon code actuel:

var recognitionResults = await inkRecognizerContainer.RecognizeAsync(inkCanvas.InkPresenter.StrokeContainer, InkRecognitionTarget.All) 
string answerString = string.Empty; 

foreach (var result in recognitionResults) 
{ 
    answerString += result.GetTextCandidates()[0]; 
} 

int submittedAnswer = Convert.ToInt32(answerString); 

Répondre

1

Le problème est que si vous écrivez un « 1 » la façon dont la plupart des gens le font ressemble « | », et est reconnu comme une barre verticale

Cela devrait être lié à la reconnaissance de l'écriture vous choisi, cochez la Simple inking sample officielle

le deuxième scénario nous montre comment reconnaître handwrit ing de traits d'encre utilisant différents reconnaisseur de l'écriture manuscrite

Ceci est le résultat de Microsoft English (US) Handwriting Recognizer:

Recognizer Result

Il semble qu'il devrait y avoir un moyen de régler le InkRecognizerContainer à reconnaître uniquement les nombres

Il n'existe aucun paramètre de ce type pour InkRecognizer de reconnaître uniquement num ber, la seule façon possible est de vérifier le résultat et d'aviser l'utilisateur de réécrire à nouveau pour un meilleur effet de reconnaissance.

+0

Huh. C'est le système de reconnaissance que j'utilise. Je vais essayer plus tard aujourd'hui. –

+0

Y at-il un moyen d'apporter Microsoft English (US) Handwriting Recognizer avec application? L'utilisateur peut l'utiliser immédiatement sans l'installer dans la région et la langue – quangkid