BitmapDecoder Classe
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Rappresenta un contenitore per i frame bitmap. Ogni frame bitmap è un oggetto BitmapSource. Questa classe astratta fornisce un set di funzionalità di base per tutti gli oggetti decodificatori 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à
- Derivato
Esempio
Nell'esempio seguente viene illustrato come usare il Create(Uri, BitmapCreateOptions, BitmapCacheOption) metodo per creare un decodificatore per una determinata immagine. 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)
L'esempio di codice seguente illustra come usare l'oggetto predefinito TiffBitmapDecoder per aprire e decodificare una bitmap TIFF (Tagged Image File Format). L'oggetto risultante BitmapSource viene utilizzato come oggetto Source di un Image elemento .
// 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 oggetto BitmapFrame stesso, ma è un contenitore per BitmapFrame gli oggetti. Ognuno BitmapFrame nel contenitore può avere attributi diversi, tra cui dimensioni, risoluzioni o tavolozze diverse.
A meno che non sia selezionato un codec specifico, Windows Presentation Foundation (macchine virtuali Windows) usa l'individuazione automatica della fase di esecuzione per identificare il formato di un'immagine e associarlo al 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, è necessario usare l'oggetto derivato BitmapDecoder o BitmapEncoder, ad esempio la TiffBitmapDecoder classe .
Il formato TIFF (Tagged Image File Format) e il formato GIF (Graphics Interchange Format) sono gli unici formati di immagine implementati che supportano più fotogrammi.
Costruttori
| Nome | Descrizione |
|---|---|
| BitmapDecoder() |
Inizializza una nuova istanza di BitmapDecoder. |
Proprietà
| Nome | Descrizione |
|---|---|
| CodecInfo |
Ottiene informazioni che descrivono questo codec. |
| ColorContexts |
Ottiene un valore che rappresenta il profilo colore associato a una bitmap, se definito. |
| Dispatcher |
Ottiene l'oggetto DispatcherDispatcherObject a cui è associato. (Ereditato da DispatcherObject) |
| Frames |
Ottiene il contenuto di un singolo frame all'interno di una bitmap. |
| IsDownloading |
Ottiene un valore che indica se il decodificatore sta attualmente scaricando il contenuto. |
| Metadata |
Ottiene un'istanza di BitmapMetadata che rappresenta i metadati globali associati a questa bitmap, se vengono definiti i metadati. |
| Palette |
Ottiene l'oggetto BitmapPalette associato a questo decodificatore. |
| Preview |
Ottiene un oggetto BitmapSource che rappresenta l'anteprima globale di questa bitmap, se definito. |
| Thumbnail |
Ottiene un oggetto BitmapSource che rappresenta l'anteprima della bitmap, se definita. |
Metodi
| Nome | Descrizione |
|---|---|
| CheckAccess() |
Determina se il thread chiamante ha accesso a questo DispatcherObjectoggetto . (Ereditato da DispatcherObject) |
| Create(Stream, BitmapCreateOptions, BitmapCacheOption) |
Crea un oggetto BitmapDecoder da un Stream oggetto utilizzando l'oggetto specificato BitmapCreateOptions e BitmapCacheOption. |
| Create(Uri, BitmapCreateOptions, BitmapCacheOption, RequestCachePolicy) |
Crea un oggetto BitmapDecoder da un Uri oggetto utilizzando l'oggetto specificato BitmapCreateOptionsBitmapCacheOption e RequestCachePolicy. |
| Create(Uri, BitmapCreateOptions, BitmapCacheOption) |
Crea un oggetto BitmapDecoder da un Uri oggetto utilizzando l'oggetto specificato BitmapCreateOptions e BitmapCacheOption. |
| CreateInPlaceBitmapMetadataWriter() |
Crea un'istanza di InPlaceBitmapMetadataWriter, che può essere usata per aggiornare i metadati di una bitmap. |
| Equals(Object) |
Determina se l'oggetto specificato è uguale all'oggetto corrente. (Ereditato da Object) |
| Finalize() |
Libera le risorse ed esegue altre operazioni di pulizia prima che venga BitmapDecoder recuperato da Garbage Collection. |
| GetHashCode() |
Funge da funzione hash predefinita. (Ereditato da Object) |
| GetType() |
Ottiene il Type dell'istanza corrente. (Ereditato da Object) |
| MemberwiseClone() |
Crea una copia superficiale del Objectcorrente. (Ereditato da Object) |
| ToString() |
Converte il valore corrente di un oggetto BitmapDecoder in un oggetto String. |
| VerifyAccess() |
Impone che il thread chiamante abbia accesso a questo DispatcherObjectoggetto . (Ereditato da DispatcherObject) |
Eventi
| Nome | Descrizione |
|---|---|
| DownloadCompleted |
Si verifica quando un oggetto BitmapDecoder ha terminato il download del contenuto bitmap. |
| DownloadFailed |
Si verifica quando il download del contenuto bitmap non è riuscito. |
| DownloadProgress |
Si verifica quando un oggetto BitmapDecoder ha effettuato lo stato di avanzamento del download del contenuto bitmap. |