c# 控件截图

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

            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;
            }

 

posted on 2013-10-16 15:09  Mis_Eur  阅读(563)  评论(0编辑  收藏  举报

导航