AnalysisHintNode, classe
Mise à jour : November 2007
Fournit une indication d'analyse à un InkAnalyzer pour une région.
Espace de noms : Microsoft.Ink
Assembly : Microsoft.Ink.Analysis (dans Microsoft.Ink.Analysis.dll)
Syntaxe
'Déclaration
Public NotInheritable Class AnalysisHintNode _
Inherits ContextNode
'Utilisation
Dim instance As AnalysisHintNode
public sealed class AnalysisHintNode : ContextNode
public ref class AnalysisHintNode sealed : public ContextNode
public final class AnalysisHintNode extends ContextNode
public final class AnalysisHintNode extends ContextNode
Notes
Un AnalysisHintNode fournit une indication concernant une zone spécifique (propriété Location de l'indication) au InkAnalyzer auquel il est attaché. L'indication fournit du contexte supplémentaire à l'analyseur d'entrée manuscrite pour améliorer la précision de la reconnaissance. Le InkAnalyzer applique ces informations de contexte lors de l'analyse d'entrée manuscrite dans la zone de l'indication.
Si une zone infinie est assignée à une indication, appelée indication globale, le InkAnalyzer applique le contexte de l'indication à l'ensemble de l'entrée manuscrite qui ne se trouve pas dans la zone d'une autre indication. Plusieurs indications peuvent être attachées à un même InkAnalyzer. Toutefois, vous ne pouvez attacher qu'une seule indication globale à un InkAnalyzer et les indications non globales ne peuvent pas se chevaucher. Pour plus d'informations sur les types d'informations de contexte qu'une indication peut fournir, consultez les membres de cette classe.
Pour ajouter une indication à un InkAnalyzer, utilisez la méthode InkAnalyzer.CreateAnalysisHint. Pour supprimer une indication d'un InkAnalyzer, utilisez DeleteAnalysisHint.
Remarque : |
---|
L'ajout d'une indication à un InkAnalyzer n'affecte pas la propriété DirtyRegion de l'objet InkAnalyzer. Pour que le InkAnalyzer procède à une nouvelle analyse d'entrée manuscrite dans la zone de l'indication, utilisez la méthode Union(AnalysisRegion) de l'objet DirtyRegion. |
Le InkAnalyzer met à jour la propriété Links de l'indication à chaque appel à la méthode Analyze ou BackgroundAnalyze. Le InkAnalyzer ajoute un ContextLink entre le AnalysisHintNode et chaque ContextNode auxquels l'indication s'applique. Si une indication s'applique à tous les descendants d'un ContextNode, le InkAnalyzer lie l'indication à ce ContextNode uniquement et non à ses descendants.
La propriété Location d'un AnalysisHintNode n'est pas utilisée pour appliquer l'indication à un nœud de reconnaissance personnalisé. Si vous créez une indication et définissez son emplacement de façon à inclure les traits dans le CustomRecognizerNode, l'indication ne sera pas appliquée à ces traits. Pour appliquer correctement l'indication aux traits à l'intérieur d'un nœud de reconnaissance personnalisé, créez un lien entre le AnalysisHintNode et le CustomRecognizerNode avant d'appeler la méthode Analyze. Supposons par exemple qu'il existe un AnalysisHintNode nommé theAnalysisHint et un CustomRecognizerNode nommé theCustomRecognizerNode. Pour créer un lien entre les deux, utilisez theAnalysisHint.Links.Add(theCustomRecognizerNode, ContextLinkDirection.LinksWith).
Vous ne pouvez appliquer qu'une indication non globale à un CustomRecognizerNode. Pour supprimer une indication non globale d'un CustomRecognizerNode, utilisez la méthode Remove afin de supprimer le lien de la propriété Links du CustomRecognizerNode.
Si une indication non globale pour une zone non vide est appliquée à un CustomRecognizerNode, le InkAnalyzer applique le contexte de l'indication au CustomRecognizerNode et à l'entrée manuscrite dans la zone de l'indication.
L'analyse ne crée ni ne supprime de lien entre un AnalysisHintNode et un CustomRecognizerNode.
Lorsque vous utilisez des indications pour une application de formulaire, l'application doit éviter de combiner du contexte textuel et une entrée manuscrite dans les formulaires. Cela signifie par exemple que les noms des champs de texte ne doivent pas être créés dans l'arborescence d'analyse. Les indications sont destinées à associer l'entrée manuscrite à des zones sur les pages et tout contexte textuel interférera avec l'association entre l'entrée manuscrite et l'indication. L'analyse peut fusionner l'entrée manuscrite et le contexte textuel dans la même région d'écriture, afin d'empêcher l'association de l'entrée manuscrite avec la zone de l'indication.
Exemples
Cet exemple crée un AnalysisHintNode, theAnalysisHint, pour le InkAnalyzer, theInkAnalyzerWithHint, et définit theAnalysisHint comme une indication globale en lui assignant une zone infinie. Il définit ensuite les propriétés AllowPartialDictionaryTerms et Name sur l'indication.
' Add a new, global analysis hint to theInkAnalyzerWithHint.
Dim theAnalysisHint As Microsoft.Ink.AnalysisHintNode = _
Me.theInkAnalyzerWithHint.CreateAnalysisHint()
theAnalysisHint.Location.MakeInfinite()
theAnalysisHint.AllowPartialDictionaryTerms = True
theAnalysisHint.Name = "Allow Partial Dictionary Terms"
// Add a new, global analysis hint to theInkAnalyzerWithHint.
Microsoft.Ink.AnalysisHintNode theAnalysisHint =
this.theInkAnalyzerWithHint.CreateAnalysisHint();
theAnalysisHint.Location.MakeInfinite();
theAnalysisHint.AllowPartialDictionaryTerms = true;
theAnalysisHint.Name = "Allow Partial Dictionary Terms";
Hiérarchie d'héritage
System.Object
Microsoft.Ink.ContextNode
Microsoft.Ink.AnalysisHintNode
Sécurité des threads
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.
Plateformes
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.
Informations de version
.NET Framework
Pris en charge dans : 3.0