码迷,mamicode.com
首页 > 其他好文 > 详细

byte,bitmap,image互转

时间:2016-07-06 11:42:59      阅读:157      评论:0      收藏:0      [点我收藏+]

标签:

/// <summary>         /// 将图片Image转换成Byte[]         /// </summary>         /// <param name="Image">image对象</param>         /// <param name="imageFormat">后缀名</param>         /// <returns></returns>         public static byte[] ImageToBytes(Image Image, System.Drawing.Imaging.ImageFormat imageFormat)         {

            if (Image == null) { return null; }

            byte[] data = null;

            using (MemoryStream ms= new MemoryStream())             {

                 using (Bitmap Bitmap = new Bitmap(Image))                 {

                    Bitmap.Save(ms, imageFormat);

                    ms.Position = 0;

                    data = new byte[ms.Length];

                    ms.Read(data, 0, Convert.ToInt32(ms.Length));

                    ms.Flush();

                }

            }

            return data;

        }

 

 

            /// <summary>             /// byte[]转换成Image             /// </summary>             /// <param name="byteArrayIn">二进制图片流</param>             /// <returns>Image</returns>             public static System.Drawing.Image byteArrayToImage(byte[] byteArrayIn)             {                 if (byteArrayIn == null)                     return null;                 using (System.IO.MemoryStream ms = new System.IO.MemoryStream(byteArrayIn))                 {                     System.Drawing.Image returnImage = System.Drawing.Image.FromStream(ms);                     ms.Flush();                     return returnImage;                 }             }

 

    //Image转换Bitmap

   1. Bitmap img = new Bitmap(imgSelect.Image);

   2. Bitmap bmp = (Bitmap)pictureBox1.Image;

 

//Bitmap转换成Image

using System.IO;

private static System.Windows.Controls.Image Bitmap2Image(System.Drawing.Bitmap Bi)         {                        MemoryStream ms = new MemoryStream();             Bi.Save(ms, System.Drawing.Imaging.ImageFormat.Png);             BitmapImage bImage = new BitmapImage();             bImage.BeginInit();             bImage.StreamSource = new MemoryStream(ms.ToArray());             bImage.EndInit();             ms.Dispose();             Bi.Dispose();             System.Windows.Controls.Image i = new System.Windows.Controls.Image();             i.Source = bImage;             return i ;         }

 

//byte[] 转换 Bitmap  public static Bitmap BytesToBitmap(byte[] Bytes)          {              MemoryStream stream = null;              try              {                  stream = new MemoryStream(Bytes);                  return new Bitmap((Image)new Bitmap(stream));              }              catch (ArgumentNullException ex)              {                  throw ex;              }              catch (ArgumentException ex)              {                  throw ex;              }              finally              {                  stream.Close();              }          }     //Bitmap转byte[]           public static byte[] BitmapToBytes(Bitmap Bitmap)          {              MemoryStream ms = null;              try              {                  ms = new MemoryStream();                  Bitmap.Save(ms, Bitmap.RawFormat);                  byte[] byteImage = new Byte[ms.Length];                  byteImage = ms.ToArray();                  return byteImage;              }              catch (ArgumentNullException ex)              {                  throw ex;              }              finally              {                  ms.Close();              }          }      } 

byte,bitmap,image互转

标签:

原文地址:http://www.cnblogs.com/xietianjiao/p/5646315.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!