Bagikan melalui


BitmapDecoder Kelas

Definisi

Menyediakan akses baca ke data kontainer bitmap serta data dari bingkai pertama.

public ref class BitmapDecoder sealed : IBitmapFrameWithSoftwareBitmap
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
class BitmapDecoder final : IBitmapFrameWithSoftwareBitmap
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
public sealed class BitmapDecoder : IBitmapFrameWithSoftwareBitmap
Public NotInheritable Class BitmapDecoder
Implements IBitmapFrameWithSoftwareBitmap
Warisan
Object Platform::Object IInspectable BitmapDecoder
Atribut
Penerapan

Persyaratan Windows

Rangkaian perangkat
Windows 10 (diperkenalkan dalam 10.0.10240.0)
API contract
Windows.Foundation.UniversalApiContract (diperkenalkan dalam v1.0)

Contoh

Berikut adalah contoh parsial untuk membuat objek dekoder. Contoh ini mengasumsikan Anda memilih file dengan Windows.Storage.Pickers.FileOpenPicker. Untuk instruksi lengkap tentang memilih file, membuat dekoder, dan mendekode gambar, lihat Pencitraan

FileOpenPicker fileOpenPicker = new FileOpenPicker();
fileOpenPicker.SuggestedStartLocation = PickerLocationId.PicturesLibrary;
fileOpenPicker.FileTypeFilter.Add(".jpg");
fileOpenPicker.ViewMode = PickerViewMode.Thumbnail;

var inputFile = await fileOpenPicker.PickSingleFileAsync();

if (inputFile == null)
{
    // The user cancelled the picking operation
    return;
}

SoftwareBitmap softwareBitmap;

using (IRandomAccessStream stream = await inputFile.OpenAsync(FileAccessMode.Read))
{
    // Create the decoder from the stream
    BitmapDecoder decoder = await BitmapDecoder.CreateAsync(stream);

    // Get the SoftwareBitmap representation of the file
    softwareBitmap = await decoder.GetSoftwareBitmapAsync();
}

Keterangan

Format gambar

BitmapDecoder dapat mendekode format berikut.

  • JPEG
  • PNG
  • GIF
  • TIFF
  • BMP
  • ICO
  • JPEG-XR
  • Setiap format mentah Kamera yang diinstal dengan menggunakan Microsoft Camera Codec Pack.

Untuk daftar format pendekodean, lihat topik BitmapEncoder .

Kelas BitmapDecoder mengimplementasikan IBitmapFrame. Ini menyediakan akses ke data kontainer serta data dari bingkai pertama. Ini memungkinkan aplikasi untuk mencapai skenario yang paling umum tanpa perlu mengambil BitmapFrame terpisah.

Riwayat versi

Versi Windows Versi SDK Nilai ditambahkan
1809 17763 HeifDecoderId
1809 17763 WebpDecoderId

Properti

BitmapAlphaMode

Mode alfa default dari bingkai pertama.

BitmapContainerProperties

Menyediakan akses ke properti bitmap kontainer.

BitmapPixelFormat

Format piksel yang paling sesuai dengan bingkai pertama.

BitmapProperties

Tampilan baca-saja metadata dalam bingkai pertama.

BmpDecoderId

Pengidentifikasi unik dekoder BMP.

DecoderInformation

Informasi tentang dekoder bitmap.

DpiX

Resolusi horizontal bingkai pertama dalam titik per inci.

DpiY

Resolusi vertikal bingkai pertama dalam titik per inci.

FrameCount

Jumlah bingkai dalam file gambar.

GifDecoderId

Pengidentifikasi unik dekoder GIF.

HeifDecoderId

Pengidentifikasi unik dari dekoder HEIF.

IcoDecoderId

Pengidentifikasi unik dekoder ICO.

JpegDecoderId

Pengidentifikasi unik dekoder JPEG.

JpegXRDecoderId

Pengidentifikasi unik dekoder JPEG-XR.

OrientedPixelHeight

Tinggi bingkai pertama dalam piksel, setelah orientasi EXIF diterapkan ke bitmap.

OrientedPixelWidth

Lebar bingkai pertama dalam piksel, setelah orientasi EXIF diterapkan ke bitmap.

PixelHeight

Tinggi bingkai pertama dalam piksel.

PixelWidth

Lebar bingkai pertama dalam piksel.

PngDecoderId

Pengidentifikasi unik dekoder PNG.

TiffDecoderId

Pengidentifikasi unik dekoder TIFF.

WebpDecoderId

Pengidentifikasi unik dekoder WebP.

Metode

CreateAsync(Guid, IRandomAccessStream)

Secara asinkron membuat BitmapDecoder baru menggunakan codec bitmap tertentu dan menginisialisasinya menggunakan aliran.

CreateAsync(IRandomAccessStream)

Secara asinkron membuat BitmapDecoder baru dan menginisialisasinya menggunakan aliran.

GetDecoderInformationEnumerator()

Dekode bitmap diinstal pada sistem dan informasi tentang mereka.

GetFrameAsync(UInt32)

Secara asinkron mengambil bingkai dari file gambar.

GetPixelDataAsync()

Secara asinkron meminta data piksel untuk bingkai.

GetPixelDataAsync(BitmapPixelFormat, BitmapAlphaMode, BitmapTransform, ExifOrientationMode, ColorManagementMode)

Secara asinkron meminta data piksel untuk bingkai menggunakan parameter yang ditentukan.

GetPreviewAsync()

Secara asinkron mengembalikan aliran yang berisi gambar pratinjau.

GetSoftwareBitmapAsync()

Secara asinkron mendapatkan representasi SoftwareBitmap dari bitmap yang didekodekan.

GetSoftwareBitmapAsync(BitmapPixelFormat, BitmapAlphaMode, BitmapTransform, ExifOrientationMode, ColorManagementMode)

Secara asinkron mendapatkan representasi SoftwareBitmap dari bitmap yang didekodekan.

GetSoftwareBitmapAsync(BitmapPixelFormat, BitmapAlphaMode)

Secara asinkron mendapatkan representasi SoftwareBitmap dari bitmap yang didekodekan.

GetThumbnailAsync()

Secara asinkron mengembalikan aliran yang berisi gambar mini.

Berlaku untuk

Lihat juga