BitmapSource Klas
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Vertegenwoordigt één constante set pixels op een bepaalde grootte en resolutie.
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
- Overname
- Afgeleid
- Kenmerken
Voorbeelden
In het volgende codevoorbeeld ziet u hoe u een BitmapSource besturingselement maakt en gebruikt als de bron van een Image besturingselement.
// 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
In het volgende codevoorbeeld wordt een BitmapSource afgeleide klasse gebruikt om BitmapImageeen bitmap te maken op basis van een afbeeldingsbestand en dit te gebruiken als bron van een Image besturingselement.
// 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
Opmerkingen
BitmapSource is de basisbouwsteen van de Windows Presentation Foundation (WPF) imaging-pijplijn, die conceptueel een enkele, constante set pixels op een bepaalde grootte en resolutie vertegenwoordigt. Een BitmapSource kan één frame zijn in een afbeeldingsbestand dat een decoder levert, of het kan het resultaat zijn van een transformatie die zelfstandig BitmapSource werkt. BitmapSource wordt niet gebruikt om een afbeelding met meerdere frames of animaties weer te geven.
Windows Presentation Foundation (WPF) ondersteunt systeemeigen compressie en decomprimatie van bitmapafbeeldingen (BMP), Graphics Interchange Format (GIF), Joint Photographics Experts Group (JPEG), Portable Network Graphics (PNG) en TIFF-afbeeldingen (Tagged Image File Format).
Voor bitmapdecoderingsscenario's BitmapSource gebruikt u automatische codecdetectie op basis van de geïnstalleerde codecs op het systeem van de gebruiker.
De maximale hoogte en breedte van een afbeelding is 2^16 pixels bij 32 bits per kanaal * 4 kanalen. De maximale grootte van een BitmapSource is 2^32 bytes (64 gigabyte) en de maximale afbeeldingsgrootte is vier giga pixel. De minimale grootte van de afbeelding is 1x1.
Constructors
| Name | Description |
|---|---|
| BitmapSource() |
Initialiseert een nieuw exemplaar van de BitmapSource klasse. |
Eigenschappen
| Name | Description |
|---|---|
| CanFreeze |
Hiermee wordt een waarde opgehaald die aangeeft of het object onmodieerbaar kan worden gemaakt. (Overgenomen van Freezable) |
| DependencyObjectType |
Hiermee haalt u het DependencyObjectType CLR-type van dit exemplaar op. (Overgenomen van DependencyObject) |
| Dispatcher |
Hiermee wordt de Dispatcher aan dit DispatcherObject gekoppelde bestand. (Overgenomen van DispatcherObject) |
| DpiX |
Hiermee haalt u de horizontale puntjes per inch (dpi) van de afbeelding op. |
| DpiY |
Hiermee haalt u de verticale puntjes per inch (dpi) van de afbeelding op. |
| Format |
Hiermee haalt u de systeemeigen gegevens PixelFormat op van de bitmapgegevens. |
| HasAnimatedProperties |
Hiermee wordt een waarde opgehaald die aangeeft of een of meer AnimationClock objecten zijn gekoppeld aan een van de afhankelijkheidseigenschappen van dit object. (Overgenomen van Animatable) |
| Height |
Hiermee haalt u de hoogte van de bron bitmap op in apparaatonafhankelijke eenheden (1/96e inch per eenheid). |
| IsDownloading |
Hiermee wordt een waarde opgehaald die aangeeft of de BitmapSource inhoud momenteel wordt gedownload. |
| IsFrozen |
Hiermee wordt een waarde opgehaald die aangeeft of het object momenteel kan worden gewijzigd. (Overgenomen van Freezable) |
| IsSealed |
Hiermee wordt een waarde opgehaald die aangeeft of dit exemplaar momenteel is verzegeld (alleen-lezen). (Overgenomen van DependencyObject) |
| Metadata |
Hiermee haalt u de metagegevens op die aan deze bitmapafbeelding zijn gekoppeld. |
| Palette |
Hiermee haalt u het kleurenpalet van de bitmap op, als er een is opgegeven. |
| PixelHeight |
Hiermee haalt u de hoogte van de bitmap in pixels op. |
| PixelWidth |
Hiermee wordt de breedte van de bitmap in pixels opgeslagen. |
| Width |
Hiermee haalt u de breedte van de bitmap op in apparaatonafhankelijke eenheden (1/96e inch per eenheid). |
Methoden
| Name | Description |
|---|---|
| ApplyAnimationClock(DependencyProperty, AnimationClock, HandoffBehavior) |
Hiermee wordt een AnimationClock op de opgegeven DependencyPropertywaarde toegepast. Als de eigenschap al is geanimeerd, wordt de opgegeven HandoffBehavior waarde gebruikt. (Overgenomen van Animatable) |
| ApplyAnimationClock(DependencyProperty, AnimationClock) |
Hiermee wordt een AnimationClock op de opgegeven DependencyPropertywaarde toegepast. Als de eigenschap al is geanimeerd, wordt het SnapshotAndReplace handoff-gedrag gebruikt. (Overgenomen van Animatable) |
| BeginAnimation(DependencyProperty, AnimationTimeline, HandoffBehavior) |
Hiermee past u een animatie toe op de opgegeven DependencyProperty. De animatie wordt gestart wanneer het volgende frame wordt weergegeven. Als de opgegeven eigenschap al is geanimeerd, wordt de opgegeven HandoffBehavior gebruikt. (Overgenomen van Animatable) |
| BeginAnimation(DependencyProperty, AnimationTimeline) |
Hiermee past u een animatie toe op de opgegeven DependencyProperty. De animatie wordt gestart wanneer het volgende frame wordt weergegeven. Als de opgegeven eigenschap al is geanimeerd, wordt het SnapshotAndReplace handoff-gedrag gebruikt. (Overgenomen van Animatable) |
| CheckAccess() |
Bepaalt of de aanroepende thread toegang heeft tot dit DispatcherObject. (Overgenomen van DispatcherObject) |
| CheckIfSiteOfOrigin() |
Controleert of de bitmapbroninhoud afkomstig is van een bekende site van oorsprong. Deze methode wordt gebruikt om ervoor te zorgen dat pixelkopieerbewerkingen veilig zijn. |
| ClearValue(DependencyProperty) |
Hiermee wist u de lokale waarde van een eigenschap. De eigenschap die moet worden gewist, wordt opgegeven door een DependencyProperty id. (Overgenomen van DependencyObject) |
| ClearValue(DependencyPropertyKey) |
Hiermee wist u de lokale waarde van een alleen-lezen eigenschap. De eigenschap die moet worden gewist, wordt opgegeven door een DependencyPropertyKey. (Overgenomen van DependencyObject) |
| Clone() |
Hiermee maakt u een wijzigbare kloon van dit BitmapSourceobject, waardoor diepe kopieën van de waarden van dit object worden gemaakt. Bij het kopiëren van afhankelijkheidseigenschappen kopieert deze methode bronverwijzingen en gegevensbindingen (maar ze kunnen deze mogelijk niet meer oplossen) maar niet animaties of hun huidige waarden. |
| CloneCore(Freezable) |
Maakt dit exemplaar een diepe kopie van de opgegeven BitmapSource. Bij het kopiëren van afhankelijkheidseigenschappen kopieert deze methode bronverwijzingen en gegevensbindingen (maar ze kunnen deze mogelijk niet meer oplossen) maar niet animaties of hun huidige waarden. |
| CloneCurrentValue() |
Hiermee maakt u een wijzigbare kloon van dit BitmapSource object, waardoor diepe kopieën worden gemaakt van de huidige waarden van dit object. Resourceverwijzingen, gegevensbindingen en animaties worden niet gekopieerd, maar de huidige waarden zijn. |
| CloneCurrentValueCore(Freezable) |
Maakt dit exemplaar een wijzigbare diepe kopie van de opgegeven BitmapSource met behulp van huidige eigenschapswaarden. Resourceverwijzingen, gegevensbindingen en animaties worden niet gekopieerd, maar de huidige waarden zijn. |
| CoerceValue(DependencyProperty) |
Hiermee wordt de waarde van de opgegeven afhankelijkheidseigenschap gecodeerd. Dit wordt bereikt door een CoerceValueCallback functie aan te roepen die is opgegeven in eigenschapsmetagegevens voor de afhankelijkheidseigenschap, zoals deze bestaat bij het aanroepen DependencyObject. (Overgenomen van DependencyObject) |
| CopyPixels(Array, Int32, Int32) |
Kopieert de bitmap pixelgegevens naar een matrix van pixels met de opgegeven stride, beginnend bij de opgegeven offset. |
| CopyPixels(Int32Rect, Array, Int32, Int32) |
Kopieert de bitmap pixelgegevens binnen de opgegeven rechthoek naar een matrix van pixels met de opgegeven stride vanaf de opgegeven offset. |
| CopyPixels(Int32Rect, IntPtr, Int32, Int32) |
Kopieert de bitmap pixelgegevens binnen de opgegeven rechthoek. |
| Create(Int32, Int32, Double, Double, PixelFormat, BitmapPalette, Array, Int32) |
Hiermee maakt u een nieuwe BitmapSource op basis van een matrix met pixels. |
| Create(Int32, Int32, Double, Double, PixelFormat, BitmapPalette, IntPtr, Int32, Int32) |
Hiermee maakt u een nieuwe BitmapSource op basis van een matrix met pixels die zijn opgeslagen in onbeheerd geheugen. |
| CreateInstance() |
Initialiseert een nieuw exemplaar van de Freezable klasse. (Overgenomen van Freezable) |
| CreateInstanceCore() |
Wanneer deze wordt geïmplementeerd in een afgeleide klasse, maakt u een nieuw exemplaar van de Freezable afgeleide klasse. (Overgenomen van Freezable) |
| Equals(Object) |
Bepaalt of een opgegeven DependencyObject gelijk is aan de huidige DependencyObject. (Overgenomen van DependencyObject) |
| Freeze() |
Maakt het huidige object onmodifieerbaar en stelt de IsFrozen eigenschap ervan in op |
| FreezeCore(Boolean) |
Maakt een exemplaar van BitmapSource of een afgeleide klasse onveranderbaar. |
| GetAnimationBaseValue(DependencyProperty) |
Retourneert de niet-geanimeerde waarde van de opgegeven DependencyProperty. (Overgenomen van Animatable) |
| GetAsFrozen() |
Hiermee maakt u een geblokkeerde kopie van de Freezableeigenschapswaarden met basiswaarden (niet-geanimeerd). Omdat de kopie is geblokkeerd, worden alle geblokkeerde subobjecten gekopieerd met verwijzing. (Overgenomen van Freezable) |
| GetAsFrozenCore(Freezable) |
Hiermee wordt dit exemplaar een kloon van het opgegeven BitmapSource object. |
| GetCurrentValueAsFrozen() |
Hiermee maakt u een geblokkeerde kopie van het Freezable gebruik van de huidige eigenschapswaarden. Omdat de kopie is geblokkeerd, worden alle geblokkeerde subobjecten gekopieerd met verwijzing. (Overgenomen van Freezable) |
| GetCurrentValueAsFrozenCore(Freezable) |
Hiermee wordt deze instantie een geblokkeerde kloon van de opgegeven BitmapSource. Resourceverwijzingen, gegevensbindingen en animaties worden niet gekopieerd, maar de huidige waarden zijn. |
| GetHashCode() |
Hiermee haalt u een hashcode op.DependencyObject (Overgenomen van DependencyObject) |
| GetLocalValueEnumerator() |
Hiermee maakt u een gespecialiseerde enumerator om te bepalen welke afhankelijkheidseigenschappen lokaal waarden hebben ingesteld.DependencyObject (Overgenomen van DependencyObject) |
| GetType() |
Hiermee haalt u de Type huidige instantie op. (Overgenomen van Object) |
| GetValue(DependencyProperty) |
Retourneert de huidige effectieve waarde van een afhankelijkheidseigenschap op dit exemplaar van een DependencyObject. (Overgenomen van DependencyObject) |
| InvalidateProperty(DependencyProperty) |
Evalueert de effectieve waarde voor de opgegeven afhankelijkheidseigenschap opnieuw. (Overgenomen van DependencyObject) |
| MemberwiseClone() |
Hiermee maakt u een ondiepe kopie van de huidige Object. (Overgenomen van Object) |
| OnChanged() |
Aangeroepen wanneer het huidige Freezable object wordt gewijzigd. (Overgenomen van Freezable) |
| OnFreezablePropertyChanged(DependencyObject, DependencyObject, DependencyProperty) |
Dit lid ondersteunt de Windows Presentation Foundation -infrastructuur (WPF) en is niet bedoeld om rechtstreeks vanuit uw code te worden gebruikt. (Overgenomen van Freezable) |
| OnFreezablePropertyChanged(DependencyObject, DependencyObject) |
Zorgt ervoor dat de juiste contextpointers tot stand worden gebracht voor een DependencyObjectType gegevenslid dat zojuist is ingesteld. (Overgenomen van Freezable) |
| OnPropertyChanged(DependencyPropertyChangedEventArgs) |
Overschrijft de DependencyObject implementatie van het aanroepen OnPropertyChanged(DependencyPropertyChangedEventArgs) van Changed handlers als reactie op een veranderende afhankelijkheidseigenschap van het typeFreezable. (Overgenomen van Freezable) |
| ReadLocalValue(DependencyProperty) |
Retourneert de lokale waarde van een afhankelijkheidseigenschap, als deze bestaat. (Overgenomen van DependencyObject) |
| ReadPreamble() |
Zorgt ervoor dat de Freezable thread wordt geopend vanuit een geldige thread. Overnames van Freezable deze methode moeten aan het begin van een API worden aangeroepen die gegevensleden leest die geen afhankelijkheidseigenschappen zijn. (Overgenomen van Freezable) |
| SetCurrentValue(DependencyProperty, Object) |
Hiermee stelt u de waarde van een afhankelijkheidseigenschap in zonder de waardebron te wijzigen. (Overgenomen van DependencyObject) |
| SetValue(DependencyProperty, Object) |
Hiermee stelt u de lokale waarde van een afhankelijkheidseigenschap in, die is opgegeven door de id van de afhankelijkheidseigenschap. (Overgenomen van DependencyObject) |
| SetValue(DependencyPropertyKey, Object) |
Hiermee stelt u de lokale waarde van een alleen-lezen afhankelijkheidseigenschap in, die is opgegeven door de DependencyPropertyKey id van de afhankelijkheidseigenschap. (Overgenomen van DependencyObject) |
| ShouldSerializeProperty(DependencyProperty) |
Retourneert een waarde die aangeeft of serialisatieprocessen de waarde voor de opgegeven afhankelijkheidseigenschap moeten serialiseren. (Overgenomen van DependencyObject) |
| ToString() |
Hiermee maakt u een tekenreeksweergave van dit object op basis van de huidige cultuur. (Overgenomen van ImageSource) |
| ToString(IFormatProvider) |
Hiermee maakt u een tekenreeksweergave van dit object op basis van de IFormatProvider doorgegeven tekenreeks. Als de provider is |
| VerifyAccess() |
Hiermee wordt afgedwongen dat de aanroepende thread toegang heeft tot dit DispatcherObject. (Overgenomen van DispatcherObject) |
| WritePostscript() |
Hiermee wordt de gebeurtenis voor de Changed gebeurtenis gegenereerd en wordt Freezable de OnChanged() methode aangeroepen. Klassen die zijn afgeleid van Freezable , moeten deze methode aan het einde van een API aanroepen die klasseleden wijzigt die niet zijn opgeslagen als afhankelijkheidseigenschappen. (Overgenomen van Freezable) |
| WritePreamble() |
Controleert of het Freezable niet is geblokkeerd en of deze wordt geopend vanuit een geldige threadingcontext. Freezable overnemers moeten deze methode aan het begin van een API aanroepen die schrijft naar gegevensleden die geen afhankelijkheidseigenschappen zijn. (Overgenomen van Freezable) |
gebeurtenis
| Name | Description |
|---|---|
| Changed |
Treedt op wanneer het Freezable object dat het bevat, wordt gewijzigd. (Overgenomen van Freezable) |
| DecodeFailed |
Treedt op wanneer de installatiekopieën niet kunnen worden geladen, vanwege een beschadigde afbeeldingskoptekst. |
| DownloadCompleted |
Treedt op wanneer de bitmapinhoud volledig is gedownload. |
| DownloadFailed |
Treedt op wanneer de bitmapinhoud niet kan worden gedownload. |
| DownloadProgress |
Vindt plaats wanneer de downloadvoortgang van de bitmapinhoud is gewijzigd. |
Expliciete interface-implementaties
| Name | Description |
|---|---|
| IFormattable.ToString(String, IFormatProvider) |
Hiermee wordt de waarde van het huidige exemplaar opgemaakt met behulp van de opgegeven indeling. (Overgenomen van ImageSource) |