Partager via


InkAnalyzerBase.AddStroke, méthode (Int32, array<Int32[], array<Guid[], Int32)

Mise à jour : November 2007

Ajoute des données de trait à l'analyseur d'entrée manuscrite pour un trait unique et assigne au trait un identificateur de culture spécifique.

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

Syntaxe

'Déclaration
Public Function AddStroke ( _
    strokeId As Integer, _
    strokePacketData As Integer(), _
    strokePacketDescription As Guid(), _
    languageId As Integer _
) As ContextNodeBase
'Utilisation
Dim instance As InkAnalyzerBase
Dim strokeId As Integer
Dim strokePacketData As Integer()
Dim strokePacketDescription As Guid()
Dim languageId As Integer
Dim returnValue As ContextNodeBase

returnValue = instance.AddStroke(strokeId, _
    strokePacketData, strokePacketDescription, _
    languageId)
public ContextNodeBase AddStroke(
    int strokeId,
    int[] strokePacketData,
    Guid[] strokePacketDescription,
    int languageId
)
public:
ContextNodeBase^ AddStroke(
    int strokeId, 
    array<int>^ strokePacketData, 
    array<Guid>^ strokePacketDescription, 
    int languageId
)
public ContextNodeBase AddStroke(
    int strokeId,
    int[] strokePacketData,
    Guid[] strokePacketDescription,
    int languageId
)
public function AddStroke(
    strokeId : int, 
    strokePacketData : int[], 
    strokePacketDescription : Guid[], 
    languageId : int
) : ContextNodeBase

Paramètres

  • strokePacketData
    Type : array<System.Int32[]
    Tableau contenant les données de paquet du trait.
  • strokePacketDescription
    Type : array<System.Guid[]
    Tableau contenant les identificateurs de la propriété du paquet.
  • languageId
    Type : System.Int32
    Identificateur de culture à assigner au trait.

Valeur de retour

Type : System.Windows.Ink.AnalysisCore.ContextNodeBase
Nœud de contexte auquel l'analyseur d'entrée manuscrite a ajouté le trait.

Notes

Le InkAnalyzerBase ajoute le trait à un ContextNodeBase dont la propriété Type a la valeur UnclassifiedInk().

L'analyseur d'entrée manuscrite assigne l'identificateur de culture spécifié au trait. Il ajoute ensuite le trait au premier nœud d'entrée manuscrite non classifié sous le nœud racine de l'analyseur d'entrée manuscrite qui contient des traits présentant le même identificateur de culture. Si l'analyseur d'entrée manuscrite ne trouve pas de nœud présentant le même identificateur de culture, il crée un ContextNodeBase sous son nœud racine et ajoute le trait au nouveau nœud d'entrée manuscrite non classifié.

strokePacketData contient des données de paquet pour tous les points du trait. strokePacketDescription contient les identificateurs globaux uniques (GUID) qui décrivent les types de données de paquet pour chaque point du trait. Pour obtenir la liste des propriétés de paquet disponibles, consultez la classe PacketProperty.

Cette méthode étend la propriété DirtyRegion à l'union de la valeur actuelle de la région et du cadre englobant du trait ajouté.

Si le InkAnalyzerBase contient déjà un trait présentant le même identificateur, le InkAnalyzerBase lève une exception.

Exemples

Cet exemple définit une méthode qui convertit un Stroke en données de paquet, ajoute le trait à un InkAnalyzerBase et assigne au trait un identificateur de paramètres régionaux spécifique. La méthode retourne le ContextNodeBase auquel l'analyseur d'entrée manuscrite a ajouté le trait.

''' <summary>
''' Adds a stroke to an InkAnalyzerBase and assigns a specific
''' culture identifier to the stroke.
''' </summary>
''' <param name="baseInkAnalyzer">
''' The analyzer that receives the stroke.</param>
''' <param name="theStroke">The stroke to add.</param>
''' <param name="languageIdentifier">The culture identifier to assign to
''' the stroke.</param>
''' <returns>The node to which the analyzer added the stroke.</returns>
''' <remarks>
''' This method converts stroke data to packet data for example only.
''' The InkAnalyzerBase is used when your application is handling packet
''' data. If your application uses stroke data from an Ink object, then
''' you would use InkAnalyzer.
''' </remarks>
Public Overloads Shared Function MyAddStroke( _
ByVal baseInkAnalyzer As System.Windows.Ink.AnalysisCore.InkAnalyzerBase, _
ByVal theStroke As Microsoft.Ink.Stroke, _
ByVal languageIdentifier As Integer) _
As System.Windows.Ink.AnalysisCore.ContextNodeBase
    If baseInkAnalyzer Is Nothing Then
        Throw New ArgumentNullException("baseInkAnalyzer")
    End If

    If theStroke Is Nothing Then
        Throw New ArgumentNullException("theStroke")
    End If

    ' Add a single stroke to the InkAnalyzerBase and specify the
    ' stroke's language.
    Dim result As System.Windows.Ink.AnalysisCore.ContextNodeBase = _
        baseInkAnalyzer.AddStroke(theStroke.Id, _
            theStroke.GetPacketData(), theStroke.PacketDescription, _
            languageIdentifier)

    Return result
End Function 'AddStroke
/// <summary>
/// Adds a stroke to an InkAnalyzerBase and assigns a specific
/// culture identifier to the stroke.
/// </summary>
/// <param name="baseInkAnalyzer">
/// The analyzer that receives the stroke.</param>
/// <param name="theStroke">The stroke to add.</param>
/// <param name="languageIdentifier">The culture identifier to assign to
/// the stroke.</param>
/// <returns>The node to which the analyzer added the stroke.</returns>
/// <remarks>
/// This method converts stroke data to packet data for example only.
/// The InkAnalyzerBase is used when your application is handling packet
/// data. If your application uses stroke data from an Ink object, then
/// you would use InkAnalyzer.
/// </remarks>
public static System.Windows.Ink.AnalysisCore.ContextNodeBase MyAddStroke(
System.Windows.Ink.AnalysisCore.InkAnalyzerBase baseInkAnalyzer,
    Microsoft.Ink.Stroke theStroke,
    int languageIdentifier)
{
    if (null == baseInkAnalyzer)
    {
        throw new ArgumentNullException("baseInkAnalyzer");
    }

    if (null == theStroke)
    {
        throw new ArgumentNullException("theStroke");
    }

    // Add a single stroke to the InkAnalyzerBase and specify the
    // stroke's language.
    System.Windows.Ink.AnalysisCore.ContextNodeBase result = baseInkAnalyzer.AddStroke(
        theStroke.Id, theStroke.GetPacketData(),
        theStroke.PacketDescription, languageIdentifier);

    return result;
}

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

AddStroke, surcharge

System.Windows.Ink.AnalysisCore, espace de noms

InkAnalyzerBase.AddStrokes

InkAnalyzerBase.RemoveStroke

InkAnalyzerBase.RemoveStrokes