Я пытаюсь сохранить изображение на SQL Server, чтобы SSRS мог его прочитать. Мне нужно преобразовать в WriteableBitmap (и, возможно, JPEG?), Поэтому я могу внести изменения в размер изображения перед сохранением. Однако, когда я пытаюсь вытащить преобразованное изображение из SQL Server, он вообще не будет отображаться в SSRS. Что я делаю не так?Преобразование FileStream в WriteableBitmap в JPEG в байт-массив для SSRS
byte[] m_Bytes = ReadToEnd(fileStream); //this works fine
WriteableBitmap bmp1 = new WriteableBitmap(166, 166);
bmp1.FromByteArray(m_Bytes); //this works fine
ExtendedImage image = bmp1.ToImage();
MemoryStream stream = new MemoryStream();
ImageTools.IO.Encoders.AddEncoder<JpegEncoder>();
JpegEncoder encoder = new JpegEncoder();
encoder.Encode(image, stream);
BitmapImage img = new BitmapImage();
img.SetSource(stream);
WriteableBitmap bmp2 = new WriteableBitmap(img);
byte[] buffer1 = bmp2.ToByteArray();
CurrentOrder.CompanyImage = buffer1; //this does save a byte array but it will not render in SSRS. If I set buffer1 to bmp1.ToByteArray() then it works fine but I am still unable to resize it using the resize method in WriteableEx without it not rendering in SSRS.
Это еще одна попытка в одно и то же, и это не будет оказывать либо:
И это проще и не будет работать:
byte[] m_Bytes = ReadToEnd(fileStream);
WriteableBitmap bmp1 = new WriteableBitmap(166, 166);
bmp1.FromByteArray(m_Bytes);
WriteableBitmap resizedImage = bmp1.Resize(25, 25, WriteableBitmapExtensions.Interpolation.Bilinear);
byte[] buffer1 = resizedImage.ToByteArray();
CurrentOrder.CompanyImage = buffer1;
Кстати, это в Silverlight. –