Partager via


InkAnalyzerBase.Load, méthode

Mise à jour : November 2007

Charge les résultats d'analyse enregistrés dans l'analyseur d'entrée manuscrite.

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

Syntaxe

'Déclaration
Public Function Load ( _
    serializedResults As Byte(), _
    originalToNewStrokeIdMap As Hashtable _
) As Boolean
'Utilisation
Dim instance As InkAnalyzerBase
Dim serializedResults As Byte()
Dim originalToNewStrokeIdMap As Hashtable
Dim returnValue As Boolean

returnValue = instance.Load(serializedResults, _
    originalToNewStrokeIdMap)
public bool Load(
    byte[] serializedResults,
    Hashtable originalToNewStrokeIdMap
)
public:
bool Load(
    array<unsigned char>^ serializedResults, 
    Hashtable^ originalToNewStrokeIdMap
)
public boolean Load(
    byte[] serializedResults,
    Hashtable originalToNewStrokeIdMap
)
public function Load(
    serializedResults : byte[], 
    originalToNewStrokeIdMap : Hashtable
) : boolean

Paramètres

  • serializedResults
    Type : array<System.Byte[]
    Tableau d'entiers non signés 8 bits contenant les résultats d'analyse enregistrés.
  • originalToNewStrokeIdMap
    Type : System.Collections.Hashtable
    Mappage des anciens identificateurs de trait aux nouveaux identificateurs de trait ou nullune référence null (Nothing en Visual Basic) pour conserver les identificateurs de trait d'origine.

Valeur de retour

Type : System.Boolean
true si l'analyseur d'entrée manuscrite a chargé les résultats de l'analyse ; sinon, false.

Notes

Lorsque l'analyseur d'entrée manuscrite ajoute un ContextNodeBase issu des résultats enregistrés, il assigne un nouvel identificateur global unique (GUID) à la propriété Id de l'objet ContextNodeBase.

Cette méthode ajoute les résultats d'analyse enregistrés à l'arborescence ContextNodeBase existante. Pour garantir que les résultats combinés sont correctement triés, ajoutez la zone contenant les nœuds de contexte chargés à la propriété DirtyRegion de l'analyseur d'entrée manuscrite et effectuez une nouvelle analyse d'entrée manuscrite.

La méthode SaveResults n'enregistre pas les données de paquet avec les résultats de l'analyse.

Chaque clé de originalToNewStrokeIdMap correspond à l'identificateur du trait dans les résultats d'analyse enregistrés. Chaque valeur de originalToNewStrokeIdMap correspond au nouvel identificateur qui remplace l'identificateur d'origine dans les résultats d'analyse chargés.

Si une indication d'analyse enregistrée entre en conflit avec une indication d'analyse existante, l'analyseur d'entrée manuscrite ne charge pas l'indication enregistrée, mais charge tout de même les résultats enregistrés restants. Toutefois, si l'analyseur charge les résultats d'un trait qui se trouve dans la zone d'une indication d'analyse enregistrée qu'il ne charge pas, il ajoute le cadre englobant du trait à la propriété DirtyRegion de l'objet InkAnalyzerBase. De plus, si l'analyseur charge les résultats d'un trait qui se trouve dans la zone d'une indication d'analyse existante, il ajoute également le cadre englobant du trait à la propriété DirtyRegion de l'objet InkAnalyzerBase. Pour plus d'informations sur les indications d'analyse, consultez PropertyGuidsForAnalysisHintsBase.

Le InkAnalyzerBase déclenche les événements ContextNodeCreatedBase, ContextNodeLinkAddingBase et ContextNodePropertiesUpdatedBase lors du chargement des résultats enregistrés.

Exemples

L'exemple suivant charge les résultats d'analyse enregistrés à partir du tableau d'entiers non signés 8 bits, savedResults. L'exemple charge les résultats dans le InkAnalyzerBase, theInkAnalyzerBase. Cet exemple n'indique pas comment calculer les nouveaux identificateurs de trait lorsque l'analyseur d'entrée manuscrite contient déjà des données de trait.

' Load previously saved analysis results
Dim successful As Boolean = False
If 0 = theInkAnalyzerBase.RootNode.GetStrokeIds().Length Then
    ' If the analyzer does not already contain stroke data, do not
    ' remap the identifiers for the strokes.
    successful = theInkAnalyzerBase.Load(savedResults, Nothing)
Else
    ' If the analyzer does already contain stroke data, remap the stroke
    ' identifiers for the saved stroke data. Then use that remapping
    ' to load the results.
End If
// Load previously saved analysis results
bool successful = false;
if (0 == theInkAnalyzerBase.RootNode.GetStrokeIds().Length)
{
    // If the analyzer does not already contain stroke data, do not
    // remap the identifiers for the strokes.
    successful = theInkAnalyzerBase.Load(savedResults, null);
}
else
{
    // If the analyzer does already contain stroke data, remap the stroke
    // identifiers for the saved stroke data. Then use that remapping
    // to load the results.
}

Plateformes

Windows Vista, Windows XP SP2, Windows Server 2003

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

InkAnalyzerBase, classe

Membres InkAnalyzerBase

System.Windows.Ink.AnalysisCore, espace de noms

System.Windows.Ink.AnalysisCore.ContextNodeBase

InkAnalyzerBase.DirtyRegion

InkAnalyzerBase.SaveResults