How to create a Bitmap deep copy

前端 未结 5 1663
礼貌的吻别
礼貌的吻别 2020-12-18 18:49

I\'m dealing with Bitmaps in my application and for some purposes I need to create a deep copy of the Bitmap. Is there an elegant way how to do it?

I tried

5条回答
  •  被撕碎了的回忆
    2020-12-18 19:09

    Suppose you already have a bitmap called original with something in it

    Bitmap original = new Bitmap( 200, 200 );     
    Bitmap copy = new Bitmap(original.Width, original.Height);
    using (Graphics graphics = Graphics.FromImage(copy))
    {
      Rectangle imageRectangle = new Rectangle(0, 0, copy.Width, copy.Height);
      graphics.DrawImage( original, imageRectangle, imageRectangle, GraphicsUnit.Pixel);
    }
    

    This should create a copy of the same size, and draw the original into the copy.

提交回复
热议问题