当前位置:编程学习 > C#/ASP.NET >>

C# 如何将某一窗口内所有内容保存为图像

C# 如何将某一窗口内所有内容保存为图像
此窗口中包含控件等内容,而且有滚动条,
内容远超过一屏,感谢大家了 --------------------编程问答-------------------- 哈,遨游就有这功能。怎么个做法等高人,MARK --------------------编程问答-------------------- 留个脚印~关注 --------------------编程问答-------------------- shift print 健可以,你可以模拟按下这两个健 --------------------编程问答-------------------- 是存到clipboard里 --------------------编程问答-------------------- 这么难的题,就别在csdn问了 --------------------编程问答-------------------- WINFROM可以看看下面
http://blog.csdn.net/zgke/archive/2008/09/05/2886394.aspx

--------------------编程问答--------------------

 private Bitmap GetBitmap()
        {
            //获得当前屏幕的大小
            Rectangle rect = new Rectangle(this.Location, new Size(this.Width , this.Height ));
            //rect = Screen.GetWorkingArea(this);
            //创建一个以当前屏幕为模板的图象
            Graphics g1 = this.CreateGraphics();
            ////创建以屏幕大小为标准的位图
            Bitmap MyImage = new Bitmap(rect.Width, rect.Height, g1);
            Graphics g2 = Graphics.FromImage(MyImage);
            //得到屏幕的DC
            IntPtr dc1 = g1.GetHdc();
            //得到Bitmap的DC
            IntPtr dc2 = g2.GetHdc();
            //调用此API函数,实现屏幕捕获
            BitBlt(dc2, 0, 0, rect.Width, rect.Height, dc1, 0, 0, 13369376);
            //释放掉屏幕的DC
            g1.ReleaseHdc(dc1);
            //释放掉Bitmap的DC
            g2.ReleaseHdc(dc2);
            //以JPG文件格式来保存
            //MyImage.Save(@"c:\Capture.bmp", ImageFormat.Bmp);
            //MessageBox.Show("当前屏幕已经保存为C盘的capture.jpg文件!");
            return MyImage;
        }

内容远超过一屏???是什么意思? --------------------编程问答-------------------- 接分! --------------------编程问答-------------------- 接分! --------------------编程问答-------------------- //截屏,参考

private void button1_Click(object sender, EventArgs e)
{     
    Bitmap bt = new Bitmap(this.Width, this.Height);
    Graphics g = Graphics.FromImage(bt);
    g.CopyFromScreen(new Point(this.Left, this.Top), new Point(0, 0), this.Size);
    bt.MakeTransparent();
    bt.Save("c:\\tempfile.bmp", System.Drawing.Imaging.ImageFormat.Bmp);
   

--------------------编程问答-------------------- 楼上的,不错
但恐怕还不能满足楼主的要求 --------------------编程问答-------------------- 内容远超过一屏,有意思!!

正好也要做个类似的,关注!! --------------------编程问答-------------------- 使用WebBrowser,可以做到,搜一下这方面很多
补充:.NET技术 ,  C#
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,