Freigeben über


Ink.Load-Methode

Füllt ein neues Ink-Objekt mit bekannten Binärdaten auf.

Namespace:  Microsoft.Ink
Assembly:  Microsoft.Ink (in Microsoft.Ink.dll)

Syntax

'Declaration
Public Sub Load ( _
    inkdata As Byte() _
)
'Usage
Dim instance As Ink
Dim inkdata As Byte()

instance.Load(inkdata)
public void Load(
    byte[] inkdata
)
public:
void Load(
    array<unsigned char>^ inkdata
)
public void Load(
    byte[] inkdata
)
public function Load(
    inkdata : byte[]
)

Parameter

  • inkdata
    Typ: array<System.Byte[]
    Das Byte-Array, das die Freihanddaten enthält.

Hinweise

Sie könnenFreihandeingaben nur in ein neues, leeres Ink-Objekt laden, also ein Ink-Objekt, das weder Stroke-Objekte erfasst hat noch über zugeordnete Eigenschaften verfügt. Wenn Sie versuchen, Freihandeingaben in ein Ink-Objekt zu laden, das Striche erfasst hat oder über zugeordnete Eigenschaften verfügt, dann wird selbst dann eine Ausnahme ausgelöst, wenn die Striche oder Eigenschaften aus dem Ink-Objekt gelöscht wurden. Grund hierfür ist die Art und Weise, wie die Id-Eigenschaften zugewiesen werden. Jedem Stroke-Objekt wird ein eindeutiger Id-Eigenschaftswert zugeordnet und dieser Id-Eigenschaftswert wird auch dann nicht wiederverwendet, wenn das Stroke-Objekt aus dem Ink-Objekt gelöscht wurde. Das bedeutet, wenn ein Ink-Objekt einen Stroke mit einem Id-Eigenschaftswert von 1 enthielte und Sie das Stroke-Objekt löschten und andere Freihanddaten in dieses Ink-Objekt luden, dann müsste die Id-Eigenschaft für jedes neue Stroke-Objekt einen Wert größer als oder gleich 2 haben. Das Verfolgen dieses Eigenschaftswerts für mehrere Ink-Objekte könnte zu Fehlern führen und ist daher nicht zulässig.

Hinweis

Wenn Sie versuchen, Freihanddaten in ein Ink-Objekt zu laden, das nicht leer ist, dann gehen alle im Ink-Objekt enthaltenen Daten, einschließlich aller CustomStrokes oder ExtendedProperties, bei einem Aufruf der Load-Methode verloren.

Mit der Save-Methode können Sie Freihanddaten im GIF-Format speichern, das aus einem Array von Byte-Daten besteht. Das GIF-Speicherformat wird im PersistenceFormat-Enumerationstyp angegeben. Nachdem das Array von Byte-Daten vorliegt, können Sie es in ein anderes Ink-Objekt laden. Das bedeutet, dass Sie GIF-kompatible Byte-Arraydaten auf dieselbe Weise in ein anderes Ink-Objekt laden können, wie wenn Sie die Save-Methode aufrufen und ein Byte-Array erhalten, das nicht im GIF-Format vorliegt.

Hinweis

Sie können kein Bild erstellen, dieses Bild als Byte-Array speichern und das Byte-Array dann in ein anderes Ink-Objekt laden. Der Gründ hierfür ist, dass Microsoft® Windows® XP Tablet PC Edition das Format der Daten nicht steuern kann, wenn Sie Byte-Arraydaten im GIF-Format laden. Nachdem Sie das Bild erneut als Byte-Array gespeichert haben, können Sie deshalb die Load-Methode nicht mehr für die betreffenden Daten aufrufen.

Beispiele

In diesem Beispiel werden gespeicherte Freihandeingaben aus einer Datei in das Ink-Objekt eines InkOverlay-Objekts geladen.

Try
    ' Ink.Load() must work on a new (unused) ink object. 
    ' Otherwise, an exception is raised.
    mInkOverlay.Enabled = False
    mInkOverlay.Ink = New Ink()
    mInkOverlay.Enabled = True
    ' FILE_NAME is a class level const
    Using FS As FileStream = New FileStream(FILE_NAME, FileMode.Open)
        ' read the bytes from the file
        Dim isf(FS.Length) As Byte
        FS.Read(isf, 0, FS.Length)
        ' and load the Ink object
        mInkOverlay.Ink.Load(isf)
    End Using
Catch
    ' handle or rethrow
End Try
try
{
    // Ink.Load() must work on a new (unused) ink object. 
    // Otherwise, an exception is raised.
    mInkOverlay.Enabled = false;
    mInkOverlay.Ink = new Ink();
    mInkOverlay.Enabled = true;
    // FILE_NAME is a class level const
    using (FileStream FS = new FileStream(FILE_NAME, FileMode.Open))
    {
        // read the bytes from the file
        byte[] isf = new byte[FS.Length];
        FS.Read(isf, 0, (int)FS.Length);
        // and load the Ink object
        mInkOverlay.Ink.Load(isf);
    }
}
catch 
{
    // handle or rethrow
}

Plattformen

Windows Vista

.NET Framework und .NET Compact Framework unterstützen nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen für .NET Framework.

Versionsinformationen

.NET Framework

Unterstützt in: 3.0

Siehe auch

Referenz

Ink-Klasse

Ink-Member

Microsoft.Ink-Namespace

Ink.Save