InkManager.SaveAsync(IOutputStream) Metode
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Catatan
Untuk aplikasi Universal Windows menggunakan Extensible Application Markup Language (XAML), sebaiknya gunakan InkPresenter dan kontrol InkCanvas alih-alih InkManager.
Secara asinkron menyimpan semua objek InkStroke dalam koleksi InkStroke yang dikelola oleh InkManager ke aliran yang ditentukan.
Data tinta diserialisasikan sebagai metadata Ink Serialized Format (ISF) dan disematkan ke dalam file Graphics Interchange Format (GIF).
public:
virtual IAsyncOperationWithProgress<unsigned int, unsigned int> ^ SaveAsync(IOutputStream ^ outputStream) = SaveAsync;
/// [Windows.Foundation.Metadata.RemoteAsync]
IAsyncOperationWithProgress<uint32_t, uint32_t> SaveAsync(IOutputStream const& outputStream);
/// [Windows.Foundation.Metadata.RemoteAsync]
/// [Windows.Foundation.Metadata.Overload("SaveAsync")]
IAsyncOperationWithProgress<uint32_t, uint32_t> SaveAsync(IOutputStream const& outputStream);
[Windows.Foundation.Metadata.RemoteAsync]
public IAsyncOperationWithProgress<uint,uint> SaveAsync(IOutputStream outputStream);
[Windows.Foundation.Metadata.RemoteAsync]
[Windows.Foundation.Metadata.Overload("SaveAsync")]
public IAsyncOperationWithProgress<uint,uint> SaveAsync(IOutputStream outputStream);
function saveAsync(outputStream)
Public Function SaveAsync (outputStream As IOutputStream) As IAsyncOperationWithProgress(Of UInteger, UInteger)
Parameter
- outputStream
- IOutputStream
Aliran target. Objek IRandomAccessStream (memerlukan IOutputStream) dapat ditentukan sebagai gantinya.
Mengembalikan
Windows.Foundation.IAsyncOperationWithProgress<unsigned int,unsigned int>
IAsyncOperationWithProgress<uint32_t,uint32_t>
Ukuran aliran yang disimpan dan status operasi asinkron sebagai jumlah byte yang dikirim. Untuk informasi selengkapnya, lihat Metode WriteAsync .
Penerapan
- Atribut
Contoh
Fungsi saveStrokes
dalam contoh ini menunjukkan cara:
- Tampilkan layar penyimpanan file di mana tipe file dibatasi ke format Graphics Interchange Format (GIF) menggunakan objek FileSavePicker .
- Siapkan aliran output melalui metode OpenAsync .
- Gunakan metode SaveAsync dari objek InkManager (
inkManager
) untuk menserialisasikan data tinta ke aliran output dan menyematkannya ke dalam file Graphics Interchange Format (GIF) (storageFile
).
// Save all strokes owned by inkManager.
function saveStrokes()
{
// Ensure that strokes exist before calling saveAsync.
if (inkManager.getStrokes().size > 0)
{
// Set up the file save screen.
var savePicker = Windows.Storage.Pickers.FileSavePicker();
savePicker.suggestedStartLocation = Windows.Storage.Pickers.PickerLocationId.picturesLibrary;
savePicker.fileTypeChoices.insert("GIF with embedded ISF", [".gif"]);
savePicker.defaultFileExtension = ".gif";
// Set up the stream.
var saveStream = null;
// Asynchronously save the ink data to the stream.
savePicker.pickSaveFileAsync().done(
function (file)
{
if (null !== file)
{
file.openAsync(Windows.Storage.FileAccessMode.readWrite).then(
function (stream)
{
saveStream = stream;
return inkManager.saveAsync(saveStream);
}
).then(
function ()
{
return saveStream.flushAsync();
},
function (e) {
// Override the standard saveAsync error with our own.
throw new Error("saveAsync");
}
).done(
function ()
{
statusMessage.innerText = "Strokes saved as GIF with embedded ISF (.gif).";
saveStream.close();
},
function (e) {
statusMessage.innerText = "Save: " + e.toString();
// Close the stream if open.
if (saveStream) {
saveStream.close();
}
}
);
}
}
);
}
else
{
statusMessage.innerText = "No strokes to save.";
}
}
Keterangan
Menyematkan metadata ke dalam file Graphics Interchange Format (GIF) memungkinkan tinta untuk dilihat dalam aplikasi yang tidak mendukung tinta sambil mempertahankan keakuratan penuh untuk aplikasi berkemampuan tinta. Format ini sangat ideal untuk mengangkut konten tinta dalam file HTML dan membuatnya dapat digunakan oleh aplikasi tinta dan non-tinta.
Catatan
Format Serial Tinta (ISF) adalah representasi tinta yang paling ringkas. Ini dapat disematkan dalam format dokumen biner atau ditempatkan langsung di Clipboard sambil mempertahankan berbagai properti tinta seperti tekanan, lebar, warna, miring, memutar, dan sebagainya.
Berlaku untuk
Lihat juga
- Interaksi pena dan stylus
- Memulai: Tinta dukungan di aplikasi UWP Anda
- Sampel analisis tinta (dasar) (C#)
- Sampel pengenalan tulisan tangan tinta (C#)
- Menyimpan dan memuat goresan tinta dari file Ink Serialized Format (ISF)
- Menyimpan dan memuat goresan tinta dari clipboard
- Lokasi toolbar tinta dan sampel orientasi (dasar)
- Lokasi toolbar tinta dan sampel orientasi (dinamis)
- Sampel buku mewarnai
- Sampel catatan keluarga
- Sampel penintaan (JavaScript)
- Sampel penintaan sederhana (C#/C++)
- Sampel penintaan kompleks (C++)
- Sampel analisis tinta