代码之家  ›  专栏  ›  技术社区  ›  Linda

System.Drawing.Image到流C#

  •  62
  • Linda  · 技术社区  · 15 年前

    我有一个 System.Drawing.Image 在我的程序中。文件不在文件系统中,它保存在内存中。我需要从中创建一个流。我该怎么做呢?

    2 回复  |  直到 8 年前
        1
  •  127
  •   Kristian Frost    8 年前

    尝试以下操作:

    public static Stream ToStream(this Image image, ImageFormat format) {
      var stream = new System.IO.MemoryStream();
      image.Save(stream, format);
      stream.Position = 0;
      return stream;
    }
    

    然后您可以使用以下内容:

    var stream = myImage.ToStream(ImageFormat.Gif);
    

    用适合您场景的任何格式替换GIF。

        2
  •  12
  •   John Gietzen    12 年前

    使用内存流

    using(MemoryStream ms = new MemoryStream())
    {
        image.Save(ms, ...);
        return ms.ToArray();
    }