BitmapSource Sınıf

Tanım

Belirli bir boyut ve çözünürlükte tek bir sabit piksel kümesini temsil eder.

public ref class BitmapSource abstract : System::Windows::Media::ImageSource
[System.Windows.Localizability(System.Windows.LocalizationCategory.None, Readability=System.Windows.Readability.Unreadable)]
public abstract class BitmapSource : System.Windows.Media.ImageSource
[<System.Windows.Localizability(System.Windows.LocalizationCategory.None, Readability=System.Windows.Readability.Unreadable)>]
type BitmapSource = class
    inherit ImageSource
    interface DUCE.IResource
[<System.Windows.Localizability(System.Windows.LocalizationCategory.None, Readability=System.Windows.Readability.Unreadable)>]
type BitmapSource = class
    inherit ImageSource
Public MustInherit Class BitmapSource
Inherits ImageSource
Devralma
Türetilmiş
Öznitelikler

Örnekler

Aşağıdaki kod örneği, bir BitmapSource oluşturma ve denetimin Image kaynağı olarak kullanmayı gösterir.

// Define parameters used to create the BitmapSource.
PixelFormat pf = PixelFormats.Bgr32;
int width = 200;
int height = 200;
int rawStride = (width * pf.BitsPerPixel + 7) / 8;
byte[] rawImage = new byte[rawStride * height];

// Initialize the image with data.
Random value = new Random();
value.NextBytes(rawImage);

// Create a BitmapSource.
BitmapSource bitmap = BitmapSource.Create(width, height,
    96, 96, pf, null,
    rawImage, rawStride);

// Create an image element;
Image myImage = new Image();
myImage.Width = 200;
// Set image source.
myImage.Source = bitmap;
' Define parameters used to create the BitmapSource.
Dim pf As PixelFormat = PixelFormats.Bgr32
Dim width As Integer = 200
Dim height As Integer = 200
Dim rawStride As Integer = CType((width * pf.BitsPerPixel + 7) / 8, Integer)
Dim rawImage(rawStride * height) As Byte

' Initialize the image with data.
Dim value As New Random()
value.NextBytes(rawImage)

' Create a BitmapSource.
Dim bitmap As BitmapSource = BitmapSource.Create(width, height, 96, 96, pf, Nothing, rawImage, rawStride)

' Create an image element;
Dim myImage As New Image()
myImage.Width = 200
' Set image source.
myImage.Source = bitmap

Aşağıdaki kod örneği, BitmapImagebir BitmapSource görüntü dosyasından bit eşlem oluşturmak ve bunu bir denetimin kaynağı olarak kullanmak için türetilmiş sınıfını Image kullanır.

// Create the image element.
Image simpleImage = new Image();    
simpleImage.Width = 200;
simpleImage.Margin = new Thickness(5);

// Create source.
BitmapImage bi = new BitmapImage();
// BitmapImage.UriSource must be in a BeginInit/EndInit block.
bi.BeginInit();
bi.UriSource = new Uri(@"/sampleImages/cherries_larger.jpg",UriKind.RelativeOrAbsolute);
bi.EndInit();
// Set the image source.
simpleImage.Source = bi;
' Create the image element.
Dim simpleImage As New Image()
simpleImage.Width = 200
simpleImage.Margin = New Thickness(5)

' Create source.
Dim bi As New BitmapImage()
' BitmapImage.UriSource must be in a BeginInit/EndInit block.
bi.BeginInit()
bi.UriSource = New Uri("/sampleImages/cherries_larger.jpg", UriKind.RelativeOrAbsolute)
bi.EndInit()
' Set the image source.
simpleImage.Source = bi

Açıklamalar

BitmapSourceWindows Presentation Foundation (WPF) görüntüleme işlem hattının temel yapı taşıdır ve kavramsal olarak belirli bir boyutta ve çözünürlükte tek bir sabit piksel kümesini temsil eder. , BitmapSource bir kod çözücü tarafından sunulan bir görüntü dosyasındaki tek bir çerçeve veya kendi başına BitmapSource çalışan bir dönüşümün sonucu olabilir. BitmapSource çok çerçeveli bir görüntüyü veya animasyonu temsil etmek için kullanılmaz.

Windows Presentation Foundation (WPF), bit eşlem (BMP), Grafik Değişim Biçimi (GIF), Birleşik Fotoğraf Uzmanları Grubu (JPEG), Taşınabilir Ağ Grafikleri (PNG) ve Etiketli Görüntü Dosyası Biçimi (TIFF) görüntülerinin sıkıştırmasını ve sıkıştırmasını kaldırmayı yerel olarak destekler.

Bit eşlem kod çözme senaryolarında, BitmapSource kullanıcının sistemindeki yüklü codec'leri temel alan otomatik codec bulma işlevini kullanır.

Bir resmin en yüksek yüksekliği ve genişliği, kanal başına 32 bit * 4 kanalda 2^16 pikseldir. En büyük a boyutu BitmapSource 2^32 bayt (64 gigabayt) ve en büyük görüntü boyutu dört gigpikseldir. En küçük görüntü boyutu 1x1'dir.

Oluşturucular

BitmapSource()

BitmapSource sınıfının yeni bir örneğini başlatır.

Özellikler

CanFreeze

Nesnenin değiştirilemez hale getirilip getirilemeyeceğini belirten bir değer alır.

(Devralındığı yer: Freezable)
DependencyObjectType

DependencyObjectType Bu örneğin CLR türünü sarmalayan öğesini alır.

(Devralındığı yer: DependencyObject)
Dispatcher

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

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

Görüntünün inç başına yatay noktaları (dpi) alır.

DpiY

Görüntünün inç başına dikey noktaları (dpi) alır.

Format

Bit eşlem verilerinin yerelini PixelFormat alır.

HasAnimatedProperties

Bir veya daha fazla AnimationClock nesnenin bu nesnenin bağımlılık özelliklerinden herhangi biriyle ilişkilendirilip ilişkilendirildiğini belirten bir değer alır.

(Devralındığı yer: Animatable)
Height

Kaynak bit eşleminin yüksekliğini cihazdan bağımsız birimlerde (birim başına 1/96 inç) alır.

IsDownloading

İçeriğin şu anda indirilip indirilmediğini BitmapSource belirten bir değer alır.

IsFrozen

Nesnenin şu anda değiştirilebilir olup olmadığını gösteren bir değer alır.

(Devralındığı yer: Freezable)
IsSealed

Bu örneğin şu anda korumalı olup olmadığını belirten bir değer alır (salt okunur).

(Devralındığı yer: DependencyObject)
Metadata

Bu bit eşlem görüntüsüyle ilişkili meta verileri alır.

Palette

Bit eşlem belirtilmişse, bit eşlem renk paletini alır.

PixelHeight

Bit eşlem yüksekliğini piksel cinsinden alır.

PixelWidth

Bit eşlem genişliğini piksel cinsinden alır.

Width

Bit eşlem genişliğini cihazdan bağımsız birimler halinde (birim başına 1/96 inç) alır.

Yöntemler

ApplyAnimationClock(DependencyProperty, AnimationClock)

Belirtilen DependencyPropertyöğesine bir AnimationClock uygular. Özellik zaten animasyonluysa, iletim SnapshotAndReplace davranışı kullanılır.

(Devralındığı yer: Animatable)
ApplyAnimationClock(DependencyProperty, AnimationClock, HandoffBehavior)

Belirtilen DependencyPropertyöğesine bir AnimationClock uygular. Özellik zaten animasyonluysa, belirtilen HandoffBehavior kullanılır.

(Devralındığı yer: Animatable)
BeginAnimation(DependencyProperty, AnimationTimeline)

Belirtilen DependencyPropertyöğesine bir animasyon uygular. Animasyon, bir sonraki kare işlendiğinde başlatılır. Belirtilen özellik zaten animasyonluysa, SnapshotAndReplace iletim davranışı kullanılır.

(Devralındığı yer: Animatable)
BeginAnimation(DependencyProperty, AnimationTimeline, HandoffBehavior)

Belirtilen DependencyPropertyöğesine bir animasyon uygular. Animasyon, bir sonraki kare işlendiğinde başlatılır. Belirtilen özellik zaten animasyonluysa, belirtilen HandoffBehavior kullanılır.

(Devralındığı yer: Animatable)
CheckAccess()

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

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

Bit eşlem kaynağı içeriğinin bilinen bir kaynak sitesinden olup olmadığını denetler. Bu yöntem, piksel kopyalama işlemlerinin güvenli olduğundan emin olmak için kullanılır.

ClearValue(DependencyProperty)

Bir özelliğin yerel değerini temizler. Temizlenecek özellik bir DependencyProperty tanımlayıcı tarafından belirtilir.

(Devralındığı yer: DependencyObject)
ClearValue(DependencyPropertyKey)

Salt okunur özelliğin yerel değerini temizler. Temizlenecek özellik tarafından DependencyPropertyKeybelirtilir.

(Devralındığı yer: DependencyObject)
Clone()

Bu BitmapSourcenesnenin değerlerinin derin kopyalarını oluşturan bu öğesinin değiştirilebilir bir kopyasını oluşturur. Bağımlılık özelliklerini kopyalarken, bu yöntem kaynak başvurularını ve veri bağlamalarını kopyalar (ancak bunlar artık çözümlenmeyebilir) ancak animasyonları veya geçerli değerlerini kopyalanmaz.

CloneCore(Freezable)

Bu örneği belirtilen BitmapSourceöğesinin derin bir kopyası yapar. Bağımlılık özelliklerini kopyalarken, bu yöntem kaynak başvurularını ve veri bağlamalarını kopyalar (ancak bunlar artık çözümlenmeyebilir) ancak animasyonları veya geçerli değerlerini kopyalanmaz.

CloneCurrentValue()

Bu nesnenin değiştirilebilir bir kopyasını oluşturur ve bu BitmapSource nesnenin geçerli değerlerinin derin kopyalarını oluşturur. Kaynak başvuruları, veri bağlamaları ve animasyonlar kopyalanmaz, ancak geçerli değerleri kopyalanır.

CloneCurrentValueCore(Freezable)

Bu örneği, geçerli özellik değerlerini kullanarak belirtilenlerin BitmapSource değiştirilebilir bir derin kopyası yapar. Kaynak başvuruları, veri bağlamaları ve animasyonlar kopyalanmaz, ancak geçerli değerleri kopyalanır.

CoerceValue(DependencyProperty)

Belirtilen bağımlılık özelliğinin değerini zorlama. Bu, çağrısında DependencyObjectvar olan bağımlılık özelliği için özellik meta verilerinde belirtilen herhangi bir CoerceValueCallback işlevi çağırarak gerçekleştirilir.

(Devralındığı yer: DependencyObject)
CopyPixels(Array, Int32, Int32)

Bit eşlem piksel verilerini belirtilen uzaklıkta başlayarak belirtilen adımla bir piksel dizisine kopyalar.

CopyPixels(Int32Rect, Array, Int32, Int32)

Belirtilen dikdörtgen içindeki bit eşlem piksel verilerini belirtilen uzaklıkta başlayan belirtilen adıma sahip bir piksel dizisine kopyalar.

CopyPixels(Int32Rect, IntPtr, Int32, Int32)

Bit eşlem piksel verilerini belirtilen dikdörtgen içinde kopyalar.

Create(Int32, Int32, Double, Double, PixelFormat, BitmapPalette, Array, Int32)

Piksel dizisinden yeni BitmapSource bir oluşturur.

Create(Int32, Int32, Double, Double, PixelFormat, BitmapPalette, IntPtr, Int32, Int32)

Yönetilmeyen bellekte depolanan piksel dizisinden yeni BitmapSource bir oluşturur.

CreateInstance()

Freezable sınıfının yeni bir örneğini başlatır.

(Devralındığı yer: Freezable)
CreateInstanceCore()

Türetilmiş bir sınıfta uygulandığında, türetilmiş sınıfın Freezable yeni bir örneğini oluşturur.

(Devralındığı yer: Freezable)
Equals(Object)

Sağlanan DependencyObject öğesinin geçerli DependencyObjectile eşdeğer olup olmadığını belirler.

(Devralındığı yer: DependencyObject)
Freeze()

Geçerli nesneyi değiştirilemez hale getirir ve özelliğini olarak trueayarlarIsFrozen.

(Devralındığı yer: Freezable)
FreezeCore(Boolean)

veya türetilmiş bir sınıfın BitmapSource örneğini sabit hale getirir.

GetAnimationBaseValue(DependencyProperty)

Belirtilen DependencyPropertyöğesinin animasyonsuz değerini döndürür.

(Devralındığı yer: Animatable)
GetAsFrozen()

temel (animasyonsuz) özellik değerlerini kullanarak öğesinin dondurulan Freezablebir kopyasını oluşturur. Kopya donduruldu olduğundan, dondurulan tüm alt nesneler başvuruyla kopyalanır.

(Devralındığı yer: Freezable)
GetAsFrozenCore(Freezable)

Bu örneği belirtilen BitmapSource nesnenin bir kopyası yapar.

GetCurrentValueAsFrozen()

Geçerli özellik değerlerini kullanarak öğesinin dondurulan Freezable bir kopyasını oluşturur. Kopya donduruldu olduğundan, dondurulan tüm alt nesneler başvuruyla kopyalanır.

(Devralındığı yer: Freezable)
GetCurrentValueAsFrozenCore(Freezable)

Bu örneği belirtilen BitmapSourceöğesinin dondurulan bir kopyası yapar. Kaynak başvuruları, veri bağlamaları ve animasyonlar kopyalanmaz, ancak geçerli değerleri kopyalanır.

GetHashCode()

Bu DependencyObjectiçin bir karma kodu alır.

(Devralındığı yer: DependencyObject)
GetLocalValueEnumerator()

Hangi bağımlılık özelliklerinin bu DependencyObjectüzerinde yerel olarak ayarlı değerlere sahip olduğunu belirlemek için özelleştirilmiş bir numaralandırıcı oluşturur.

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

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

(Devralındığı yer: Object)
GetValue(DependencyProperty)

Bir öğesinin bu örneğindeki bağımlılık özelliğinin DependencyObjectgeçerli geçerli değerini döndürür.

(Devralındığı yer: DependencyObject)
InvalidateProperty(DependencyProperty)

Belirtilen bağımlılık özelliği için geçerli değeri yeniden değerlendirir.

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

Geçerli Objectöğesinin sığ bir kopyasını oluşturur.

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

Geçerli Freezable nesne değiştirildiğinde çağrılır.

(Devralındığı yer: Freezable)
OnFreezablePropertyChanged(DependencyObject, DependencyObject)

Yeni ayarlanmış bir DependencyObjectType veri üyesi için uygun bağlam işaretçilerinin oluşturulmasını sağlar.

(Devralındığı yer: Freezable)
OnFreezablePropertyChanged(DependencyObject, DependencyObject, DependencyProperty)

Bu üye Windows Presentation Foundation (WPF) altyapısını destekler ve doğrudan kodunuzdan kullanılması amaçlanmamıştır.

(Devralındığı yer: Freezable)
OnPropertyChanged(DependencyPropertyChangedEventArgs)

türündeki DependencyObjectFreezabledeğişen bağımlılık özelliğine yanıt olarak herhangi Changed bir işleyici çağırmak için uygulamasını OnPropertyChanged(DependencyPropertyChangedEventArgs) geçersiz kılar.

(Devralındığı yer: Freezable)
ReadLocalValue(DependencyProperty)

Varsa, bağımlılık özelliğinin yerel değerini döndürür.

(Devralındığı yer: DependencyObject)
ReadPreamble()

Freezable geçerli bir iş parçacığından erişildiğinden emin olunmasını sağlar. öğesinin Freezable devralıcıları, bağımlılık özellikleri olmayan veri üyelerini okuyan herhangi bir API'nin başında bu yöntemi çağırmalıdır.

(Devralındığı yer: Freezable)
SetCurrentValue(DependencyProperty, Object)

Bir bağımlılık özelliğinin değerini, değer kaynağını değiştirmeden ayarlar.

(Devralındığı yer: DependencyObject)
SetValue(DependencyProperty, Object)

Bağımlılık özelliği tanımlayıcısı tarafından belirtilen bir bağımlılık özelliğinin yerel değerini ayarlar.

(Devralındığı yer: DependencyObject)
SetValue(DependencyPropertyKey, Object)

Bağımlılık özelliğinin tanımlayıcısı tarafından belirtilen salt okunur bağımlılık özelliğinin DependencyPropertyKey yerel değerini ayarlar.

(Devralındığı yer: DependencyObject)
ShouldSerializeProperty(DependencyProperty)

Serileştirme işlemlerinin sağlanan bağımlılık özelliği için değeri serileştirmesi gerekip gerekmediğini belirten bir değer döndürür.

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

Geçerli kültüre göre bu nesnenin dize gösterimini oluşturur.

(Devralındığı yer: ImageSource)
ToString(IFormatProvider)

Geçirilene göre bu nesnenin dize gösterimini IFormatProvider oluşturur. Sağlayıcı ise nullCurrentCulture kullanılır.

(Devralındığı yer: ImageSource)
VerifyAccess()

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

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

Changed için Freezable olayını oluşturur ve yöntemini çağırırOnChanged(). öğesinden Freezable türetilen sınıflar, bağımlılık özellikleri olarak depolanmayan sınıf üyelerini değiştiren herhangi bir API'nin sonunda bu yöntemi çağırmalıdır.

(Devralındığı yer: Freezable)
WritePreamble()

öğesinin Freezable dondurulmadığını ve geçerli bir iş parçacığı bağlamından erişildiğini doğrular. Freezable inheritor'lar bağımlılık özellikleri olmayan veri üyelerine yazan herhangi bir API'nin başında bu yöntemi çağırmalıdır.

(Devralındığı yer: Freezable)

Ekinlikler

Changed

içerdiği veya nesnesi değiştirildiğinde Freezable gerçekleşir.

(Devralındığı yer: Freezable)
DecodeFailed

Bozuk bir görüntü üst bilgisi nedeniyle görüntü yüklenemediğinde gerçekleşir.

DownloadCompleted

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

DownloadFailed

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

DownloadProgress

Bit eşlem içeriğinin indirme ilerleme durumu değiştiğinde gerçekleşir.

Belirtik Arabirim Kullanımları

IFormattable.ToString(String, IFormatProvider)

Belirtilen biçimi kullanarak geçerli örneğin değerini biçimlendirin.

(Devralındığı yer: ImageSource)

Şunlara uygulanır

Ayrıca bkz.