Condividi tramite


Classe CustomRecognizerNode

Aggiornamento: novembre 2007

Rappresenta un oggetto ContextNode per una singola operazione di riconoscimento. Tutti i tratti e i nodi in un oggetto CustomRecognizerNode vengono riconosciuti in un'operazione di riconoscimento indipendente e non vengono analizzati da InkAnalyzer.

Spazio dei nomi:  Microsoft.Ink
Assembly:  Microsoft.Ink.Analysis (in Microsoft.Ink.Analysis.dll)

Sintassi

'Dichiarazione
Public NotInheritable Class CustomRecognizerNode _
    Inherits ContextNode
'Utilizzo
Dim instance As CustomRecognizerNode
public sealed class CustomRecognizerNode : ContextNode
public ref class CustomRecognizerNode sealed : public ContextNode
public final class CustomRecognizerNode extends ContextNode
public final class CustomRecognizerNode extends ContextNode

Note

In un nodo CustomRecognizerNode possono essere contenuti i tipi di elementi figlio seguenti:

  • Qualsiasi numero di nodi dell'input penna non classificati.

  • Qualsiasi numero di nodi oggetto.

  • Qualsiasi numero di nodi riga.

  • Qualsiasi numero di nodi InkWord.

  • Qualsiasi numero di nodi con un valore Guid sconosciuto.

Un oggetto CustomRecognizerNode deve essere l'elemento figlio diretto di RootNode.

Il modo più semplice per creare un riconoscimento personalizzato consiste nell'utilizzare InkAnalyzer.CreateCustomRecognizer per creare il riconoscimento e InkAnalyzer.AddStrokesToCustomRecognizer per assegnare ad esso i tratti. Se un tratto aggiunto è già stato assegnato a un nodo nella struttura ad albero del contesto InkAnalyzer, incluso UnclassifiedInkNode, viene generata un'eccezione ArgumentException. Per evitare questo problema, utilizzare InkAnalyzer.RemoveStroke o InkAnalyzer.RemoveStrokes per rimuovere questi tratti dalla struttura ad albero del contesto InkAnalyzer prima di aggiungerli al riconoscimento personalizzato.

Esempi

Nell'esempio seguente viene utilizzato un Guid per un riconoscimento personalizzato, customRecognizerId, e viene creato un oggetto CustomRecognizerNode per InkAnalyzer, theInkAnalyzer. I tratti vengono quindi aggiunti da un insieme Strokes, strokesForCustomAnalysis. Viene quindi chiamato il metodo Analyze e la stringa riconosciuta viene inserita in un oggetto TextBox, theResultsTextBox.

Dim customRecognizer As CustomRecognizerNode = _
    theInkAnalyzer.CreateCustomRecognizer(customRecognizerId)
theInkAnalyzer.AddStrokesToCustomRecognizer(strokesForCustomAnalysis, customRecognizer)

Dim theStatus As Microsoft.Ink.AnalysisStatus = theInkAnalyzer.Analyze()
theResultsTextBox.Text = customRecognizer.GetRecognizedString()
CustomRecognizerNode customRecognizer = 
    theInkAnalyzer.CreateCustomRecognizer(customRecognizerId);
theInkAnalyzer.AddStrokesToCustomRecognizer(strokesForCustomAnalysis, customRecognizer);

Microsoft.Ink.AnalysisStatus theStatus = theInkAnalyzer.Analyze();
theResultsTextBox.Text = customRecognizer.GetRecognizedString();

Gerarchia di ereditarietà

System.Object
  Microsoft.Ink.ContextNode
    Microsoft.Ink.CustomRecognizerNode

Codice thread safe

Qualsiasi membro static (Shared in Visual Basic) pubblico di questo tipo è thread-safe. I membri di istanza non sono garantiti come thread-safe.

Piattaforme

Windows Vista

.NET Framework e .NET Compact Framework non supportano tutte le versioni di ciascuna piattaforma. Per un elenco delle versioni supportate, vedere Requisiti di sistema di .NET Framework.

Informazioni sulla versione

.NET Framework

Supportato in: 3.0

Vedere anche

Riferimenti

Membri CustomRecognizerNode

Spazio dei nomi Microsoft.Ink