欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

c# 控件截图的简单实例

程序员文章站 2024-02-20 10:03:58
首先选择保存图片的路径: 复制代码 代码如下:savefiledialog1.title = "保存";     &nb...

首先选择保存图片的路径:

复制代码 代码如下:

savefiledialog1.title = "保存";
            savefiledialog1.filter = "*.png|*.png";
            savefiledialog1.restoredirectory = true;
            if (savefiledialog1.showdialog() == dialogresult.ok)
            {
                timer1.enabled = true;
            }

其次保存控件图片(为了等待savedialoge控件完全关闭,使用timer延缓):

复制代码 代码如下:

timer1.enabled = false;
            bitmap bit = new bitmap(this.width, this.height);//实例化一个和窗体一样大的bitmap
            graphics g = graphics.fromimage(bit);
            g.compositingquality = compositingquality.highquality;//质量设为最高
            //g.copyfromscreen(this.left, this.top, 0, 0, new size(this.width, this.height));//保存整个窗体为图片
            g.copyfromscreen(charttype.pointtoscreen(point.empty), point.empty, charttype.size);//只保存某个控件
            bit.save(savefiledialog1.filename);//默认保存格式为png,保存成jpg格式质量不是很好
            if (file.exists(savefiledialog1.filename.tostring()))
            {
                messagebox.show("截图成功!");
                return;
            }