Cette page vous a-t-elle été utile ?
Votre avis sur ce contenu est important. N'hésitez pas à nous faire part de vos commentaires.
Vous avez d'autres commentaires ?
1500 caractères restants
Exporter (0) Imprimer
Développer tout

InkAnalyzer, classe

Mise à jour : November 2007

Fournit l'accès à l'analyse de disposition, à la classification d'écriture et de dessin et à la reconnaissance de l'écriture manuscrite.

Espace de noms :  System.Windows.Ink
Assembly :  IAWinFX (dans IAWinFX.dll)

public class InkAnalyzer : IDisposable
public class InkAnalyzer implements IDisposable
public class InkAnalyzer implements IDisposable

Pour ajouter ou supprimer des traits du InkAnalyzer pour analyse, utilisez les méthodes AddStroke, AddStrokes, RemoveStroke() ou RemoveStrokes(). Ces méthodes mettent à jour la propriété DirtyRegion, qui définit la région qui contient les traits analysés dans l'analyse suivante.

Pour analyser l'entrée manuscrite, utilisez la méthode Analyze ou BackgroundAnalyze(). Pendant l'analyse, le InkAnalyzer exécute une analyse de disposition, une classification des traits et une reconnaissance de l'écriture manuscrite.

Pendant l'analyse, le InkAnalyzer déclenche plusieurs événements. Définissez la propriété SynchronizingObject pour spécifier le thread où le InkAnalyzer doit déclencher les événements générés pendant l'analyse d'arrière-plan. De nombreux événements InkAnalyzer prennent en charge les fonctionnalités du proxy de données du InkAnalyzer. Pour plus d'informations, consultez Data Proxy with Ink Analysis.

Pour arrêter le processus d'analyse à partir d'un gestionnaire d'événements, appelez la méthode Abort.

Pour modifier la langue que l'analyseur d'entrée manuscrite utilise pour reconnaître l'écriture manuscrite, utilisez SetStrokeLanguageId() ou SetStrokesLanguageId(). Pour modifier la manière dont l'analyseur d'entrée manuscrite classifie des traits spécifiques, utilisez SetStrokeType() ou SetStrokesType().

Le InkAnalyzer charge l'ensemble des modules de reconnaissance de l'écriture manuscrite installés. La propriété InkRecognizersByPriority() obtient un InkRecognizerCollection contenant chaque InkRecognizer disponible. Si plusieurs modules de reconnaissance de l'écriture manuscrite prennent en charge une langue donnée, utilisez la méthode SetHighestPriorityInkRecognizer(InkRecognizer) pour désigner le module de reconnaissance de l'écriture manuscrite chargé de la gestion des traits pour une langue donnée.

Pour plus d'informations sur la mise à disposition de contexte pour l'opération d'analyse d'entrée manuscrite, consultez CreateAnalysisHint, DeleteAnalysisHint() et GetAnalysisHints.

L'analyseur d'entrée manuscrite représente les résultats de l'analyse sous forme de chaîne ou d'arborescence d'objets ContextNode. Pour accéder à la chaîne reconnue, utilisez la méthode GetRecognizedString(). Pour accéder à la racine de l'arborescence, utilisez la propriété RootNode. L'analyseur d'entrée manuscrite utilise les méthodes suivantes pour rechercher du texte ou des nœuds de contexte spécifiques.

Pour travailler avec d'autres résultats d'analyse, utilisez GetAlternates et ModifyTopAlternate.

Pour enregistrer des résultats d'analyse, utilisez SaveResults. Pour charger des résultats enregistrés, utilisez Load.

Pour plus d'informations sur l'utilisation du InkAnalyzer pour analyser l'entrée manuscrite, consultez Ink Analysis Overview.

Vous devez appeler explicitement la méthode Dispose sur tout objet InkAnalyzer auquel a été attaché un gestionnaire d'événements avant qu'il ne soit hors de portée.

L'exemple suivant crée un InkAnalyzer et attache le gestionnaire d'événements StrokesChanged à la propriété Strokes sur un InkCanvas, nommé theInkCanvas.

theInkAnalyzer = new InkAnalyzer();

theInkCanvas.Strokes.StrokesChanged += 
    new StrokeCollectionChangedEventHandler(Strokes_StrokesChanged);


L'exemple suivant définit le gestionnaire d'événements Strokes_StrokesChanged, qui ajoute des traits à theInkAnalyzer s'ils ont déjà été ajoutés à theInkCanvas. Il supprime également des traits de theInkAnalyzer s'ils ont déjà été supprimés de theInkCanvas.

// This event occurs whenever a stroke is added, removed, or partially erased
// from the InkCanvas.
void Strokes_StrokesChanged(object sender, StrokeCollectionChangedEventArgs e)
{
    if (e.Added.Count > 0)
    {
        theInkAnalyzer.AddStrokes(e.Added);
    }

    if (e.Removed.Count > 0)
    {
        theInkAnalyzer.RemoveStrokes(e.Removed);
    }
}


System.Object
  System.Windows.Ink.InkAnalyzer

Tous les membres static (Shared en Visual Basic) publics de ce type sont thread-safe. Il n'est pas garanti que les membres d'instance soient thread-safe.

Windows Vista

Le .NET Framework et le .NET Compact Framework ne prennent pas en charge toutes les versions de chaque plateforme. Pour obtenir la liste des versions prises en charge, consultez Configuration requise du .NET Framework.

.NET Framework

Pris en charge dans : 3.0

Ajouts de la communauté

AJOUTER
Afficher:
© 2015 Microsoft