Изображение C# в base64C#

Место общения программистов C#
Anonymous
Изображение C# в base64

Сообщение Anonymous »

У меня есть изображение в формате Base64, и мне нужно преобразовать его в изображение. Я делаю это, используя этот код:

Код: Выделить всё

public static Image ConvertBase64StringToImage(string imageBase64String)
{
var imageBytes = Convert.FromBase64String(imageBase64String);
var imageStream = new MemoryStream(imageBytes, 0, imageBytes.Length);
imageStream.Write(imageBytes, 0, imageBytes.Length);
var image = Image.FromStream(imageStream, true);
return image;
}
Затем мне нужно снова преобразовать это изображение в base64. Я использую этот код:

Код: Выделить всё

public static string ConvertImageToBase64String(Image image)
{
var imageStream = new MemoryStream();
image.Save(imageStream, ImageFormat.Png);
imageStream.Position = 0;
var imageBytes = imageStream.ToArray();
return Convert.ToBase64String(imageBytes);
}
После преобразования исходного изображения base64 в изображение и снова в base64 оно теряет качество. Исходное изображение base64 имеет длину 1676, а после преобразования — 1660.

Мне нужно то же изображение после преобразования, потому что мне нужно его сравнить. Есть идеи, как это сделать без потери качества?

Вернуться в «C#»