将bitmap转换为BitmapImage

本文关键字:BitmapImage 转换 bitmap | 更新日期: 2023-09-27 18:16:29

我有一个BitmapImage类型的可观察集合,我在其中存储了一些图像,这个集合被绑定到UI。

现在的问题是,我想改变这些图像,例如旋转。现在为了旋转,我必须从BitmapImages中创建一个transformmedbitmap,这不是问题。

当我完成后,我想把它们放回集合中,问题来了。

不能隐式转换类型"System.Windows.Media.Imaging"。transform bitmap ' to ' system . windows . media . image . bitmapimage

我已经找了很长时间和广泛,没有找到一个解决这个问题的方法。

问题:我如何将transformmedbitmap转换回BitmapImage?

将bitmap转换为BitmapImage

为了在UI中绑定图像控件的Source属性,使用BitmapSource(甚至ImageSource)作为ObservableCollection的元素类型是足够的。

您可以添加任何派生的位图类型:

public ObservableCollection<BitmapSource> Bitmaps { get; set; }
...
Bitmaps.Add(new BitmapImage(new Uri(...)));
Bitmaps.Add(new TransformedBitmap(Bitmaps[0], new RotateTransform(90)));