Freigeben über


InkManager.LoadAsync(IInputStream) Methode

Definition

Hinweis

Für universelle Windows-Apps mit Extensible Application Markup Language (XAML) empfehlen wir die Verwendung von InkPresenter und dem InkCanvas-Steuerelement anstelle von InkManager.

Lädt asynchron alle InkStroke-Objekte aus dem angegebenen Stream in die InkStroke-Auflistung , die vom InkManager verwaltet wird.

Freihanddaten werden als ISF-Metadaten (Ink Serialized Format) serialisiert und in eine GIF-Datei (Graphics Interchange Format) eingebettet.

public:
 virtual IAsyncActionWithProgress<unsigned long long> ^ LoadAsync(IInputStream ^ inputStream) = LoadAsync;
/// [Windows.Foundation.Metadata.RemoteAsync]
IAsyncActionWithProgress<uint64_t> LoadAsync(IInputStream const& inputStream);
[Windows.Foundation.Metadata.RemoteAsync]
public IAsyncActionWithProgress<ulong> LoadAsync(IInputStream inputStream);
function loadAsync(inputStream)
Public Function LoadAsync (inputStream As IInputStream) As IAsyncActionWithProgress(Of ULong)

Parameter

inputStream
IInputStream

Der Stream, der die Strichauflistung enthält. Stattdessen kann ein IRandomAccessStream-Objekt (erfordert IOutputStream) angegeben werden.

Gibt zurück

IAsyncActionWithProgress<UInt64>

Windows.Foundation.IAsyncActionWithProgress

IAsyncActionWithProgress<uint64_t>

Die status des asynchronen Vorgangs als Anzahl der abgerufenen Bytes. Weitere Informationen finden Sie unter ReadAsync-Methode .

Implementiert

Attribute

Beispiele

Die loadStrokes Funktion in diesem Beispiel veranschaulicht Folgendes:

  • Zeigen Sie einen Bildschirm zum Öffnen der Datei an, in dem der Dateityp mithilfe des FileOpenPicker-Objekts auf das GIF-Format (Graphics Interchange Format) beschränkt ist.
  • Richten Sie einen Eingabedatenstrom über die OpenAsync-Methode ein.
  • Verwenden Sie die LoadAsync-Methode eines InkManager-Objekts (inkManager), um die Freihanddaten aus einer GIF-DateistorageFile () () zu de serialisieren.
// Load strokes into an inkManager.
function loadStrokes()
{
    // Set up the file open screen.
    var openPicker = Windows.Storage.Pickers.FileOpenPicker();
    openPicker.suggestedStartLocation = Windows.Storage.Pickers.PickerLocationId.picturesLibrary;
    openPicker.fileTypeFilter.replaceAll([".gif"]);

    // Set up the stream.
    var loadStream = null;

    // Asynchronously load the ink data from the stream.
    openPicker.pickSingleFileAsync().done(
        function (file)
        {
            if (null != file)
            {
                file.openAsync(Windows.Storage.FileAccessMode.read).then(
                    function (stream) {
                        loadStream = stream;
                        return inkManager.loadAsync(loadStream);
                    }).done(
                        function()
                        {
                            var strokes = inkManager.getStrokes().length;
                            if (strokes === 0)
                            {
                                statusMessage.innerText = "No strokes in file.";
                            }
                            else
                            {
                                statusMessage.innerText = strokes + " strokes loaded.";
                            }
                            renderAllStrokes();
                            loadStream.close();
                        },
                        function (e)
                        {
                            statusMessage.innerText = "Load failed.";
                            if (loadStream)
                            {
                                // Close the stream if open.
                                loadStream.close();
                            }
                        });
            }
        });
}

Hinweise

Durch das Einbetten der Metadaten in eine GIF-Datei (Graphics Interchange Format) können Freihandeingaben in Anwendungen angezeigt werden, die nicht freihandfähig sind, während für Freihandanwendungen die volle Genauigkeit beibehalten wird. Dieses Format eignet sich ideal für den Transport von Freihandinhalten innerhalb einer HTML-Datei und macht sie sowohl für Freihandanwendungen als auch für Nicht-Freihandanwendungen nutzbar.

Hinweis

Das serialisierte Freihandformat (Ink Serialized Format, ISF) ist die kompakteste persistente Darstellung von Freihand. Es kann in ein binäres Dokumentformat eingebettet oder direkt in der Zwischenablage platziert werden, während verschiedene Freihandeigenschaften wie Druck, Breite, Farbe, Neigung, Drehung usw. beibehalten werden.

Gilt für:

Weitere Informationen