Condividi tramite


BitmapDecoder Classe

Definizione

Rappresenta un contenitore per i fotogrammi della bitmap. Ogni fotogramma della bitmap è un elemento BitmapSource. Questa classe astratta fornisce un set di base di funzionalità per tutti gli oggetti del decodificatore derivati.

public ref class BitmapDecoder abstract : System::Windows::Threading::DispatcherObject
public abstract class BitmapDecoder : System.Windows.Threading.DispatcherObject
type BitmapDecoder = class
    inherit DispatcherObject
Public MustInherit Class BitmapDecoder
Inherits DispatcherObject
Ereditarietà
BitmapDecoder
Derivato

Esempio

Nell'esempio seguente viene illustrato come usare il Create(Uri, BitmapCreateOptions, BitmapCacheOption) metodo per creare un decodificatore per un'immagine specificata. Il primo BitmapFrame dell'immagine viene usato come origine di un Image controllo.

BitmapDecoder uriBitmap = BitmapDecoder.Create(
   new Uri("sampleImages/waterlilies.jpg", UriKind.Relative),
   BitmapCreateOptions.None,
   BitmapCacheOption.Default);

// Create an image element;
Image uriImage = new Image();
uriImage.Width = 200;
// Set image source.
uriImage.Source = uriBitmap.Frames[0];
Dim uriBitmap As BitmapDecoder = BitmapDecoder.Create(New Uri("sampleImages/waterlilies.jpg", UriKind.Relative), BitmapCreateOptions.None, BitmapCacheOption.Default)

' Create an image element;
Dim uriImage As New Image()
uriImage.Width = 200
' Set image source.
uriImage.Source = uriBitmap.Frames(0)

Nell'esempio di codice seguente viene illustrato come usare l'oggetto TiffBitmapDecoder predefinito per aprire e decodificare una bitmap TIFF (Tag Image File Format). Il risultato BitmapSource viene usato come elemento Source Image .


// Open a Stream and decode a TIFF image
Stream imageStreamSource = new FileStream("tulipfarm.tif", FileMode.Open, FileAccess.Read, FileShare.Read);
TiffBitmapDecoder decoder = new TiffBitmapDecoder(imageStreamSource, BitmapCreateOptions.PreservePixelFormat, BitmapCacheOption.Default);
BitmapSource bitmapSource = decoder.Frames[0];

// Draw the Image
Image myImage1 = new Image();
myImage1.Source = bitmapSource;
myImage1.Stretch = Stretch.None;
myImage1.Margin = new Thickness(20);
' Open a Stream and decode a TIFF image
Dim imageStreamSource As New FileStream("tulipfarm.tif", FileMode.Open, FileAccess.Read, FileShare.Read)
Dim decoder As New TiffBitmapDecoder(imageStreamSource, BitmapCreateOptions.PreservePixelFormat, BitmapCacheOption.Default)
Dim bitmapSource As BitmapSource = decoder.Frames(0)

' Draw the Image
Dim myImage1 As New Image()
myImage1.Source = bitmapSource
myImage1.Stretch = Stretch.None
myImage1.Margin = New Thickness(20)

Commenti

BitmapDecoder non è un BitmapFrame oggetto stesso; invece, è un contenitore per BitmapFrame gli oggetti. Ognuno BitmapFrame nel contenitore può potenzialmente avere attributi diversi, tra cui dimensioni diverse, risoluzioni o tavolozze.

A meno che non sia selezionato un codec specifico, Windows Presentation Foundation (WPF) usa l'individuazione automatica in fase di esecuzione per identificare il formato di un'immagine e corrispondervi con il codec appropriato. Questo processo di individuazione consente a un codec sviluppato da un fornitore di software indipendente (ISV) di essere individuabile automaticamente dal sistema. Per selezionare un codec specifico, il derivato BitmapDecoder o BitmapEncoder, ad esempio la TiffBitmapDecoder classe, deve essere usato.

Il formato di file immagine contrassegnato (TIFF) e il formato di interscambio grafico (GIF) sono gli unici formati di immagine implementati che supportano più fotogrammi.

Costruttori

BitmapDecoder()

Inizializza una nuova istanza di BitmapDecoder.

Proprietà

CodecInfo

Ottiene informazioni che descrivono questo codec.

ColorContexts

Ottiene un valore che rappresenta il profilo colori associato a una bitmap, se definito.

Dispatcher

Ottiene l'oggetto Dispatcher associato a DispatcherObject.

(Ereditato da DispatcherObject)
Frames

Ottiene il contenuto di un singolo fotogramma all'interno di una bitmap.

IsDownloading

Ottiene un valore che indica se il decodificatore sta correntemente scaricando contenuto.

Metadata

Ottiene un'istanza di BitmapMetadata che rappresenta i metadati globali associati a questa bitmap, se i metadati sono definiti.

Palette

Ottiene l'oggetto BitmapPalette associato a questo decodificatore.

Preview

Ottiene un oggetto BitmapSource che rappresenta l'anteprima globale di questa bitmap, se ne è stata definita una.

Thumbnail

Ottiene un oggetto BitmapSource che rappresenta l'anteprima della bitmap, se ne è stata definita una.

Metodi

CheckAccess()

Determina se il thread chiamante ha accesso a DispatcherObject.

(Ereditato da DispatcherObject)
Create(Stream, BitmapCreateOptions, BitmapCacheOption)

Crea un oggetto BitmapDecoder da un Stream utilizzando gli oggetti BitmapCreateOptions e BitmapCacheOption specificati.

Create(Uri, BitmapCreateOptions, BitmapCacheOption)

Crea un oggetto BitmapDecoder da un Uri utilizzando gli oggetti BitmapCreateOptions e BitmapCacheOption specificati.

Create(Uri, BitmapCreateOptions, BitmapCacheOption, RequestCachePolicy)

Crea un oggetto BitmapDecoder da un Uri utilizzando gli oggetti BitmapCreateOptions, BitmapCacheOption e RequestCachePolicy specificati.

CreateInPlaceBitmapMetadataWriter()

Crea un'istanza di InPlaceBitmapMetadataWriter, che è possibile usare per aggiornare i metadati di una bitmap.

Equals(Object)

Determina se l'oggetto specificato è uguale all'oggetto corrente.

(Ereditato da Object)
Finalize()

Libera risorse ed esegue altre operazioni di pulizia prima che l'oggetto BitmapDecoder venga recuperato tramite Garbage Collection.

GetHashCode()

Funge da funzione hash predefinita.

(Ereditato da Object)
GetType()

Ottiene l'oggetto Type dell'istanza corrente.

(Ereditato da Object)
MemberwiseClone()

Crea una copia superficiale dell'oggetto Object corrente.

(Ereditato da Object)
ToString()

Converte il valore corrente dell'oggetto BitmapDecoder in un oggetto String.

VerifyAccess()

Impone che il thread chiamante abbia accesso a DispatcherObject.

(Ereditato da DispatcherObject)

Eventi

DownloadCompleted

Si verifica al termine del download di contenuto bitmap tramite BitmapDecoder.

DownloadFailed

Si verifica in caso di errori di download di contenuto bitmap.

DownloadProgress

Si verifica in seguito all'avanzamento del download di contenuto bitmap tramite un BitmapDecoder.

Si applica a

Vedi anche