Я преобразовал изображение (.tif image) в байтовый массив и сохранил в БД. Сейчас я извлекаю этот байтовый массив из БД и хочу снова преобразовать его в изображение, но этот байтовый массив, который я преобразовываю обратно в изображение, не производит то же самое. В качестве теста (как показано ниже) я использую только изображение, а не чтение из БД для целей тестирования.
Первоначальное преобразование из массива байтов в Image:
//This is the function I am using:
public static byte[] ImageToByteArray(Image image)
{
using (var ms = new MemoryStream())
{
image.Save(ms, System.Drawing.Imaging.ImageFormat.Tiff);
return ms.ToArray();
}
}
//Converting to byte array:
var tifImage = Image.FromFile(file.ToString());
var imageContent = ImageToByteArray(tifImage);
Сейчас чтобы попытаться преобразовать обратно в изображение, я делаю следующее:
var ms = new MemoryStream(imageContent);
var test1 = Image.FromStream(ms);
Но, похоже, результаты не совпадают. У меня есть функция «Разделение», которая разбивает страницы в пределах tiff, и одна возвращает 8 страниц (растровые изображения), а другая только 1.
Я не очень разбираюсь в вышесказанном, поэтому мне нужна небольшая помощь в Заполняя пробелы в знаниях, пожалуйста:)
Спасибо за любую помощь!