我是 JPEGE的 byte[]如何转换成 bmp的byte[]
注意下,不要文件的写法!最后得到的是bmp的byte[]数据

解决方案 »

  1.   

    http://topic.csdn.net/u/20071112/13/1e0ced60-2c0b-4663-98a6-11da1b43b0a6.html
      

  2.   

    Image.Save 方法 (Stream, ImageFormat) 
      

  3.   

    Image.Save   方法   (Stream,   ImageFormat)  
      

  4.   

    save 方法中有个属性可以设置
      

  5.   

    参考如下代码using System.Drawing.Imaging;//只为得到jpeg的byte[],测试用
    FileStream vFileStream = new FileStream(@"c:\temp\temp.jpg", 
        FileMode.Open, FileAccess.Read);
    byte[] jpegBuffer = new byte[vFileStream.Length];
    vFileStream.Read(jpegBuffer, 0, jpegBuffer.Length);
    vFileStream.Close();//开始处理,创建jpeg图像
    MemoryStream vMemoryStream = new MemoryStream(jpegBuffer);
    Image jpeg = Image.FromStream(vMemoryStream);
    vMemoryStream.Close();//vMemoryStream = new MemoryStream();
    //jpeg.Save(vMemoryStream, ImageFormat.Bmp); // 此方案会导致异常//创建bmp图像
    Bitmap vBitmap = new Bitmap(jpeg.Width, jpeg.Height);
    Graphics vGraphics = Graphics.FromImage(vBitmap); // 使其高宽一致
    vGraphics.DrawImage(jpeg, 0, 0); // 贴图
    vGraphics.Dispose();//保存bmp为byte[]
    vMemoryStream = new MemoryStream();
    vBitmap.Save(vMemoryStream, ImageFormat.Bmp);
    byte[] bitmapBuffer = new byte[vMemoryStream.Length];
    vMemoryStream.Read(bitmapBuffer, 0, bitmapBuffer.Length);//bitmapBuffer为所得