zoukankan      html  css  js  c++  java
  • GDI+中发生一般性错误之图片转化为字节数组

    项目中前一次遇到字节数组转化为图片时偶尔出现“GDI+中发生一般性错误”,这回是图片转化为字节数组时出现这种情况。经研究解决办法如下,原代码(出错代码)如下:

    1.public static  byte[] imageToByteArray(Image imageIn)
    2.{
    3.      using (MemoryStream ms = new MemoryStream())
    4.      {
    5.            if (imageIn != null)
    6.            {                  
    7.                  imageIn.Save(ms,ImageFormat.Jpeg);                    
    8.            }
    9.       return ms.ToArray();               
    10.     }
    11.}

    方法一:

    1.public static  byte[] imageToByteArray(Image imageIn)
    2.{
    3.     using (MemoryStream ms = new MemoryStream())
    4.     {
    5.           if (imageIn != null)
    6.           {
    7.                  Bitmap t=new Bitmap (imageIn);
    8.                  t.Save(ms,System.Drawing.Imaging.ImageFormat.Jpeg);                   
    9.           }
    10.     return ms.ToArray();               
    11.     }
    12.}

    方法二:

    1.public static  byte[] imageToByteArray(Image imageIn)
    2.{
    3.     using (MemoryStream ms = new MemoryStream())
    4.     {
    5.            if (imageIn != null)
    6.            {                  
    7.                 Bitmap pic = new Bitmap(imageIn.Width, imageIn.Height);
    8.                 Graphics g = Graphics.FromImage(pic);
    9.                 g.DrawImage(imageIn, 0, 0, imageIn.Width, imageIn.Height);
    10.                 g.Dispose();
    11.                 pic.Save(ms, ImageFormat.Jpeg);
    12.                 pic.Dispose();                   
    13.            }
    14.     return ms.ToArray();               
    15.      }
    16.}
  • 相关阅读:
    【BZOJ】3052: [wc2013]糖果公园
    【BZOJ】3757: 苹果树
    【BZOJ】1086: [SCOI2005]王室联邦
    【POJ】3648 Wedding
    【POJ】3678 Katu Puzzle
    【POJ】2296 Map Labeler
    【POJ】3207 Ikki's Story IV
    【HDU】1814 Peaceful Commission
    【HDU】2829 Lawrence
    【HDU】3480 Division
  • 原文地址:https://www.cnblogs.com/netlyf/p/1926719.html
Copyright © 2011-2022 走看看