我需要复制Image类。尝试了clone()
,但没有成功。也搜索了它并发现MemberwiseClone()
,但我想我无法访问Image类。还尝试了this解决方案,猜测它不起作用。有没有想法如何复制Image类而没有引用?
答案 0 :(得分:3)
Bitmap
(继承自Image
的构造函数重载会创建副本:
Bitmap copy = new Bitmap(image);
答案 1 :(得分:0)
我的坏。有愚蠢的错误。下面的解决方案也可以正常工作。
private Image DeepCopy(Image other)
{
using (MemoryStream ms = new MemoryStream())
{
BinaryFormatter formatter = new BinaryFormatter();
formatter.Serialize(ms, other);
ms.Position = 0;
return (Image)formatter.Deserialize(ms);
}
}
Image tempImg = DeepCopy(img);
此外,这也有效:
Image tempImg = (Image)img.Clone();