Différence entre un BitmapFrame et BitmapImage dans WPF
Quelle est la différence entre un BitmapFrame et BitmapImage dans WPF? Où voulez-vous utiliser chaque (ie. pourquoi voudriez-vous utiliser un BitmapFrame plutôt qu'un BitmapImage?)
source d'informationauteur Kris Erickson
Vous devez vous connecter pour publier un commentaire.
Vous devez vous en tenir à l'aide de la classe abstraite BitmapSource si vous avez besoin d'obtenir le bits, ou même ImageSource si vous voulez juste de le dessiner.
La mise en œuvre BitmapFrame est juste l'orienté-objet, la nature de la mise en œuvre montrant à travers. Vous ne devriez pas vraiment le besoin de distinguer entre les implémentations. BitmapFrames peut contenir un peu plus d'informations (métadonnées), mais généralement rien mais une imagerie application des soins.
Vous remarquerez ces autres classes qui héritent de BitmapSource:
Vous pouvez obtenir un BitmapSource à partir d'un URI par la construction d'un objet BitmapImage:
La BitmapSource peut aussi provenir d'un décodeur. Dans ce cas, vous êtes indirectement à l'aide de BitmapFrames.
BitmapFrame est un faible niveau primitif pour la manipulation d'images. Il est généralement utilisé lorsque vous souhaitez encoder/décoder une image d'un format à un autre.
BitmapImage est le plus haut niveau d'abstraction qui a bien des données les propriétés de liaison (UriSource, etc).
Si vous êtes juste de l'affichage d'images et que vous voulez quelque fine tuning BitmapImage est ce que vous avez besoin.
Si vous faites un faible niveau de manipulation de l'image, alors vous aurez besoin BitmapFrame.
Je sais que c'est une vieille question, mais l'on a accepté la réponse est incomplète (pas de suggérer que ma réponse est complète) et mon plus peut aider quelqu'un, quelque part.
La raison (quoique la seulement raison, j'utilise un BitmapFrame est lorsque je visite les différents cadres de multiples encadrés TIFF image à l'aide de la
TiffBitmapDecoder
classe. Par exemple,