BitmapDecoder Sınıf

Tanım

Bit eşlem çerçeveleri için bir kapsayıcıyı temsil eder. Her bit eşlem çerçevesi bir BitmapSourceşeklindedir. Bu soyut sınıf, türetilmiş tüm kod çözücü nesneleri için temel bir işlev kümesi sağlar.

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
Devralma
BitmapDecoder
Türetilmiş

Örnekler

Aşağıdaki örnekte, belirli bir görüntü için kod çözücü oluşturmak için yönteminin nasıl kullanılacağı Create(Uri, BitmapCreateOptions, BitmapCacheOption) gösterilmektedir. Görüntünün ilki BitmapFrame bir Image denetimin kaynağı olarak kullanılır.

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)

Aşağıdaki kod örneğinde TiffBitmapDecoder , Etiketli Görüntü Dosya Biçimi (TIFF) bit eşlemini açmak ve kodunu çözmek için yerleşik öğesinin nasıl kullanılacağı gösterilmektedir. Sonuçta elde edilen BitmapSource öğe olarak SourceImage kullanılır.


// 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)

Açıklamalar

BitmapDecoder kendisi değildir BitmapFrame ; bunun yerine nesneler için BitmapFrame bir kapsayıcıdır. Kapsayıcıdaki her BitmapFrame birinin farklı boyutları, çözünürlükleri veya paletleri gibi farklı öznitelikleri olabilir.

Belirli bir codec seçilmediği sürece, Windows Presentation Foundation (WPF) görüntünün biçimini belirlemek ve uygun codec bileşeniyle eşleştirmek için otomatik çalışma zamanı bulma kullanır. Bu bulma işlemi, bağımsız bir yazılım satıcısı (ISV) tarafından geliştirilen bir codec'in sistem tarafından otomatik olarak bulunabilmesini sağlar. Belirli bir codec'i seçmek için türetilmiş BitmapDecoder veya BitmapEncodersınıfı gibi TiffBitmapDecoder kullanılmalıdır.

Etiketli Görüntü Dosyası Biçimi (TIFF) ve Grafik Değişim Biçimi (GIF), birden çok kareyi destekleyen tek uygulanan görüntü biçimleridir.

Oluşturucular

Name Description
BitmapDecoder()

yeni bir örneğini BitmapDecoderbaşlatır.

Özellikler

Name Description
CodecInfo

Bu codec bileşenini açıklayan bilgileri alır.

ColorContexts

Bir bit eşlem tanımlanmışsa, bit eşlem ile ilişkili renk profilini temsil eden bir değer alır.

Dispatcher

Dispatcher Bunun DispatcherObject ilişkili olduğu öğesini alır.

(Devralındığı yer: DispatcherObject)
Frames

Bit eşlem içindeki tek bir çerçevenin içeriğini alır.

IsDownloading

Kod çözücüde şu anda içerik indirilip indirilmediğini gösteren bir değer alır.

Metadata

Meta veriler tanımlanmışsa, bu bit eşlemle ilişkili genel meta verileri temsil eden bir örneğini BitmapMetadata alır.

Palette

Bu kod çözücüyle ilişkili olan öğesini BitmapPalette alır.

Preview

Tanımlanmışsa, bu bit eşleminin genel önizlemesini temsil eden bir BitmapSource alır.

Thumbnail

Tanımlandıysa bit eşlem küçük resmini temsil eden bir BitmapSource alır.

Yöntemler

Name Description
CheckAccess()

Çağıran iş parçacığının bu DispatcherObjectöğesine erişimi olup olmadığını belirler.

(Devralındığı yer: DispatcherObject)
Create(Stream, BitmapCreateOptions, BitmapCacheOption)

belirtilen BitmapDecoder ve Streamkullanarak a'dan BitmapCreateOptions oluştururBitmapCacheOption.

Create(Uri, BitmapCreateOptions, BitmapCacheOption, RequestCachePolicy)

belirtilen BitmapDecoderUri ve BitmapCreateOptionskullanarak a'dan BitmapCacheOption oluştururRequestCachePolicy.

Create(Uri, BitmapCreateOptions, BitmapCacheOption)

belirtilen BitmapDecoder ve Urikullanarak a'dan BitmapCreateOptions oluştururBitmapCacheOption.

CreateInPlaceBitmapMetadataWriter()

bit eşlem meta verilerini güncelleştirmek için kullanılabilecek bir örneği InPlaceBitmapMetadataWriteroluşturur.

Equals(Object)

Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler.

(Devralındığı yer: Object)
Finalize()

kaynakları boşaltıp atık toplama tarafından geri kazanılmadan önce BitmapDecoder diğer temizleme işlemlerini gerçekleştirir.

GetHashCode()

Varsayılan karma işlevi işlevi görür.

(Devralındığı yer: Object)
GetType()

Geçerli örneğin Type alır.

(Devralındığı yer: Object)
MemberwiseClone()

Geçerli Objectbasit bir kopyasını oluşturur.

(Devralındığı yer: Object)
ToString()

geçerli değerini değerine BitmapDecoderStringdönüştürür.

VerifyAccess()

Çağıran iş parçacığının bu DispatcherObjectöğesine erişmesini zorlar.

(Devralındığı yer: DispatcherObject)

Ekinlikler

Name Description
DownloadCompleted

bit BitmapDecoder eşlem içeriğinin indirilmesi tamamlandığında gerçekleşir.

DownloadFailed

Bit eşlem içeriği indirilemediğinde gerçekleşir.

DownloadProgress

bit BitmapDecoder eşlem içeriği indirilirken ilerleme kaydedildiğinde gerçekleşir.

Şunlara uygulanır

Ayrıca bkz.