AnalysisHintNode, classe
Mise à jour : November 2007
Fournit une indication d'analyse à un InkAnalyzer pour une région.
Espace de noms : System.Windows.Ink
Assembly : IAWinFX (dans IAWinFX.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 pour le InkAnalyzer auquel il est attaché. L'indication concerne la zone spécifiée par la propriété Location du AnalysisHintNode. Elle fournit des informations supplémentaires relatives au contexte à l'analyseur d'entrée manuscrite utilisé 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 les autres zones d'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 pages des membres du AnalysisHintNode.
Pour ajouter une indication à un InkAnalyzer, utilisez la méthode InkAnalyzer.CreateAnalysisHint. Pour supprimer une indication d'un InkAnalyzer, utilisez InkAnalyzerDeleteAnalysisHint().
Remarque : |
---|
L'ajout d'une indication à un InkAnalyzer n'affecte pas la propriété DirtyRegionde 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 si la méthode Analyze ou BackgroundAnalyze() est appelée. Le InkAnalyzer ajoute un ContextLink entre le AnalysisHintNode et chaque ContextNode auxquels s'applique l'indication. 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ée. 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ée, 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 ContextLinkCollectionRemove() 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.
Aucun lien d'un AnalysisHintNode à CustomRecognizerNode n'est créé ou supprimé lorsque l'analyse survient.
Si des indications sont utilisées dans une application de formulaire, évitez de combiner le contexte textuel et l'entrée manuscrite. 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. Ainsi, les noms des champs de texte ne doivent pas être créés dans l'arborescence d'analyse. S'ils le sont, l'analyse peut fusionner l'entrée manuscrite et le contexte textuel dans la même zone d'écriture, en empêchant de cette façon d'associer l'entrée manuscrite à la zone de l'indication.
Exemples
Cet exemple crée un AnalysisHintNode (nommé theAnalysisHint) pour le InkAnalyzer (nommé theInkAnalyzerWithHint) et définit theAnalysisHint comme une indication globale en lui assignant une zone infinie. Les propriétés AllowPartialDictionaryTerms et Name sont ensuite définies sur l'indication.
' Add a new, global analysis hint to theInkAnalyzerWithHint.
Dim theAnalysisHint As AnalysisHintNode = Me.theInkAnalyzerWithHint.CreateAnalysisHint()
theAnalysisHint.Location.MakeInfinite()
theAnalysisHint.AllowPartialDictionaryTerms = True
theAnalysisHint.Name = "Allow Partial Dictionary Terms"
// Add a new, global analysis hint to theInkAnalyzerWithHint.
AnalysisHintNode theAnalysisHint =
this.theInkAnalyzerWithHint.CreateAnalysisHint();
theAnalysisHint.Location.MakeInfinite();
theAnalysisHint.AllowPartialDictionaryTerms = true;
theAnalysisHint.Name = "Allow Partial Dictionary Terms";
Hiérarchie d'héritage
System.Object
System.Windows.Ink.ContextNode
System.Windows.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
Voir aussi
Référence
System.Windows.Ink, espace de noms
System.Windows.Ink.ContextLink