Image img = new Bitmap(Screen.AllScreens[0].Bounds.Width, Screen.AllScreens[0].Bounds.Height);
Graphics g = Graphics.FromImage(img);
g.CopyFromScreen(new Point(0, 0), new Point(0, 0), Screen.AllScreens[0].Bounds.Size);
img.Save(@"c:\Captured.jpg", ImageFormat.Jpeg)我这样可以保存一张图片在转成流可以。。
可是我现在不想保存图片。直接转成二进制流来传送。。要怎么写

解决方案 »

  1.   

    byte[] bitarr = FileUtil.ReadFile(路径);
      

  2.   

    System.IO.MemoryStream ms = new System.IO.MemoryStream();
                System.Drawing.Image img;
                //load img...
                img.Save(ms, System.Drawing.Imaging.ImageFormat.Jpeg);
      

  3.   

               Image img = new Bitmap(Screen.AllScreens[0].Bounds.Width, Screen.AllScreens[0].Bounds.Height); 
    Graphics g = Graphics.FromImage(img); 
    g.CopyFromScreen(new Point(0, 0), new Point(0, 0), Screen.AllScreens[0].Bounds.Size); 
    img.Save(@"c:\Captured.jpg", ImageFormat.Jpeg)             System.IO.MemoryStream _ImageMemory =new System.IO.MemoryStream();
                img.Save(_ImageMemory,ImageFormat.Jpeg);
                byte[] Temp=_ImageMemory.GetBuffer();
                _ImageMemory.Dispose();
      

  4.   

    好像不可以哦。。我截的图片好像会被第一张图片图覆盖了我点两下pictureBox1 里显示的就有两次载图 第一次显示大张的。。
    第二次。显示小张的。。
    班我看看private void button2_Click(object sender, EventArgs e)
    {
     Image img = new Bitmap(Screen.AllScreens[0].Bounds.Width, Screen.AllScreens[0].Bounds.Height);
     Graphics g = Graphics.FromImage(img);
     g.CopyFromScreen(new Point(0, 0), new Point(0, 0), Screen.AllScreens[0].Bounds.Size);
     MemoryStream ms = new MemoryStream();
     img.Save(ms,ImageFormat.Jpeg);//保存在内存中
     pictureBox1.Image = Image.FromStream(ms);//用来测试有没有内存流存在
    }