Bagikan melalui


BitmapEncoder.CreateForInPlacePropertyEncodingAsync(BitmapDecoder) Metode

Definisi

Secara asinkron membuat BitmapEncoder baru untuk pengeditan properti dan metadata di tempat. Encoder baru hanya dapat mengedit properti bitmap di tempat dan akan gagal untuk penggunaan lain.

public:
 static IAsyncOperation<BitmapEncoder ^> ^ CreateForInPlacePropertyEncodingAsync(BitmapDecoder ^ bitmapDecoder);
/// [Windows.Foundation.Metadata.RemoteAsync]
 static IAsyncOperation<BitmapEncoder> CreateForInPlacePropertyEncodingAsync(BitmapDecoder const& bitmapDecoder);
[Windows.Foundation.Metadata.RemoteAsync]
public static IAsyncOperation<BitmapEncoder> CreateForInPlacePropertyEncodingAsync(BitmapDecoder bitmapDecoder);
function createForInPlacePropertyEncodingAsync(bitmapDecoder)
Public Shared Function CreateForInPlacePropertyEncodingAsync (bitmapDecoder As BitmapDecoder) As IAsyncOperation(Of BitmapEncoder)

Parameter

bitmapDecoder
BitmapDecoder

BitmapDecoder yang berisi data gambar yang akan diedit. Parameter ini harus dibuat pada aliran dengan mode akses ReadWrite.

Catatan

Encoder menulis ke aliran tempat BitmapDecoder asli dibuat. Anda tidak dapat menentukan aliran output.

Mengembalikan

Objek yang mengelola inisialisasi asinkron BitmapEncoder baru menggunakan data dari BitmapDecoder yang ada.

Atribut

Keterangan

Gunakan metode ini untuk mengambil encoder ketika Anda hanya akan menggunakannya untuk mengedit atau menulis sejumlah properti terbatas ke gambar. Encoder yang diambil dengan cara ini dapat memberikan keuntungan performa atas encoder yang dikembalikan oleh CreateForTranscodingAsync karena menulis properti baru ke ruang padding kosong alih-alih mengodekan seluruh gambar lagi.

Berikut adalah beberapa batasan pada encoder yang diambil dengan cara ini:

  • Anda hanya dapat menggunakan metode ini pada encoder:
  • BitmapDecoder input harus merupakan encoder yang dibuat pada aliran dengan akses ReadWrite.
  • Tidak semua format metadata mendukung pengodean metadata cepat. Penangan metadata asli yang mendukung metadata adalah IFD, Exif, XMP, dan GPS.
  • Blok metadata harus memiliki padding yang cukup untuk menyimpan properti yang coba Anda edit. Jika operasi pengodean gagal karena alasan apa pun, Anda harus menggunakan CreateForTranscodingAsync untuk mengedit metadata dan mengodekan ulang gambar. Saat mengodekan ulang, Anda juga dapat menambahkan padding baru atau tambahan untuk mengaktifkan pengodean properti di tempat di masa mendatang. Untuk melakukan ini, buat BitmapTypedValue baru dengan Jenis diatur ke UInt32 dan Nilai diatur ke jumlah byte padding yang ingin Anda tambahkan. Nilai umumnya adalah 4096 byte. Atur item metadata ini pada satu atau beberapa lokasi kueri metadata dalam tabel ini.
    Format metadataKueri metadata JPEGKueri metadata TIFF, JPEG-XR
    IFD/app1/ifd/PaddingSchema:Padding/ifd/PaddingSchema:Padding
    EXIF/app1/ifd/exif/PaddingSchema:Padding/ifd/exif/PaddingSchema:Padding
    XMP/xmp/PaddingSchema:Padding/ifd/xmp/PaddingSchema:Padding
    GPS/app1/ifd/gps/PaddingSchema:Padding/ifd/gps/PaddingSchema:Padding

    Berlaku untuk