title: Why does resizing a png image lose transparency?
body: <p>I am trying to resize an image as follows. I return the resized image into <code>byte[]</code> so that I can store it in database. The transparency of png image is lost. Please help to make this better.</p>
  
  <pre><code>private byte[] GetThumbNail(string imageFile, Stream imageStream, 
    int imageLen)
  {
    try
    {
      Image.GetThumbnailImageAbort imageCallBack = 
        new Image.GetThumbnailImageAbort(ThumbnailCallback);
      Bitmap getBitmap = new Bitmap(imageFile);
      byte[] returnByte = new byte[imageLen];
      Image getThumbnail = getBitmap.GetThumbnailImage(160, 59, 
        imageCallBack, IntPtr.Zero);
      using (Graphics g = Graphics.FromImage(getThumbnail))
      {
        g.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.AntiAlias;
        g.InterpolationMode = 
          System.Drawing.Drawing2D.InterpolationMode.HighQualityBicubic;
        g.DrawImage(getThumbnail, 0, 0, 160, 59);
      }
      using (MemoryStream ms = new MemoryStream())
      {
        getThumbnail.Save(ms, ImageFormat.Png);
        getThumbnail.Save("test.png", ImageFormat.Png);
        returnByte = ms.ToArray();
      }
      return returnByte;
    }
    catch (Exception)
    {
      throw;
    }
  }
  </code></pre>