Я имею дело с растровыми изображениями в своем приложении, и для некоторых целей мне нужно создать глубокую копию растрового изображения. Есть ли элегантный способ, как это сделать?
Я попробовал
Bitmap deepCopy = original.Clone();
, ну, очевидно, это создает не глубокую копию, а мелкую. Я имею дело с растровыми изображениями в моем приложении, и для некоторых целей мне нужно создать глубокую копию растрового изображения. Есть ли элегантный способ, как это сделать? Я пробовал Bitmap deepCopy = original.Clone (); , ну ...
Я имею дело с растровыми изображениями в своем приложении, и для некоторых целей мне нужно создать глубокую копию растрового изображения. Есть ли элегантный способ, как это сделать?
Я попробовал
Bitmap deepCopy = original.Clone();
, ну, очевидно, это создает не глубокую копию, а мелкую. Я имею дело с растровыми изображениями в моем приложении, и для некоторых целей мне нужно создать глубокую копию растрового изображения. Есть ли элегантный способ, как это сделать? Я пробовал Bitmap deepCopy = original.Clone (); , ну ...
Я имею дело с растровыми изображениями в своем приложении, и для некоторых целей мне нужно создать глубокую копию растрового изображения. Есть ли элегантный способ, как это сделать?
Я попробовал
Bitmap deepCopy = original.Clone();
, ну, очевидно, это создает не глубокую копию, а мелкую. Моя следующая попытка заключалась в создании нового Bitmap
Bitmap deepCopy = new Bitmap(original);
К сожалению, этот конструктор Bitmap (Изображение), а не Bitmap (Bitmap), и Bitmap (Image) преобразует мой красивый 8bppIndexed Pixelformat в другой.
Другой попыткой было использовать of a MemoryStream
public static Bitmap CreateBitmapDeepCopy(Bitmap source)
{
Bitmap result;
using (MemoryStream stream = new MemoryStream())
{
source.Save(stream, ImageFormat.Bmp);
stream.Seek(0, SeekOrigin.Begin);
result = new Bitmap(stream);
}
return result;
}
Ну, это тоже не работает, так как MemoryStream нужно открывать в течение всего срока службы Bitmap.
Итак, я подвел итоги всех своих мертвецов, и мне очень хотелось бы увидеть красивый элегантный способ создания глубокой копии Bitmap. Спасибо за это :)