有没有办法可以从base64字符串或内存中的字节数组中显示gif,png,jpg,tiff等图像而不必将它们写入磁盘?
答案 0 :(得分:2)
不要求图像源是本地文件的路径。即您可以从字节数组创建BitmapSource
(直接或首先从流中读取所有字节)并使用它。
来自BitmapSource的MSDN示例:
// Define parameters used to create the BitmapSource.
PixelFormat pf = PixelFormats.Bgr32;
int width = 200;
int height = 200;
int rawStride = (width * pf.BitsPerPixel + 7) / 8;
// Create a BitmapSource.
BitmapSource bitmap = BitmapSource.Create(width, height,
96, 96, pf, null,
new byte[rawStride * height], rawStride);
// Create an image element;
Image myImage = new Image() { Width = 200 };
// Set image source.
myImage.Source = bitmap;