Bagikan melalui


BitmapEncoder.IsThumbnailGenerated Properti

Definisi

Menunjukkan apakah gambar mini baru dibuat secara otomatis atau tidak.

public:
 property bool IsThumbnailGenerated { bool get(); void set(bool value); };
bool IsThumbnailGenerated();

void IsThumbnailGenerated(bool value);
public bool IsThumbnailGenerated { get; set; }
var boolean = bitmapEncoder.isThumbnailGenerated;
bitmapEncoder.isThumbnailGenerated = boolean;
Public Property IsThumbnailGenerated As Boolean

Nilai Properti

Boolean

bool

Nilai yang menunjukkan apakah encoder bitmap akan secara otomatis menghasilkan gambar mini baru atau tidak. Nilai defaultnya adalah False.

Keterangan

Ketika nilai ini benar, encoder bitmap akan menghasilkan gambar mini baru dengan menurunkan skala bitmap bingkai. Ukuran gambar mini ditentukan oleh properti GeneratedThumbnailWidth dan GeneratedThumbnailHeight . Ketika nilai ini false, tidak ada gambar mini yang ditulis ke file.

Jika BitmapEncoder dibuat menggunakan metode CreateForTranscodingAsync dan IsThumbnailGenerated salah, encoder bitmap akan membiarkan data gambar mini yang ada tidak tersentuh. Dalam hal ini, jika bitmap dimodifikasi sebelum pengodean, file output mungkin memiliki gambar mini yang tidak cocok dengan konten baru gambar.

Hanya jenis gambar JPEG, TIFF, dan JPEG-XR yang mendukung gambar mini pengodean. Jika format gambar yang dikodekan tidak mendukung gambar mini dan Anda mengatur IsThumbnailGenerated ke true, maka panggilan ke FlushAsync akan gagal dengan WINCODEC_ERR_UNSUPPORTEDOPERATION HRESULT. Anda harus menangkap pengecualian ini dan mencoba kembali pengodean dengan pembuatan gambar mini dinonaktifkan. Jika aplikasi Anda hanya mengodekan format gambar yang mendukung gambar mini, Anda dapat melewati langkah ini.

try
 {
     await encoder.FlushAsync();
 }
 catch (Exception err)
 {
     switch (err.HResult)
     {
         case unchecked ((int) 0x88982F81): //WINCODEC_ERR_UNSUPPORTEDOPERATION
             // If the encoder does not support writing a thumbnail, then try again
             // but disable thumbnail generation.
             encoder.IsThumbnailGenerated = false;
             break;
         default:
             throw err;
     }
 }

 if (encoder.IsThumbnailGenerated == false)
 {
     await encoder.FlushAsync();
 }

Berlaku untuk