一、函数输入
输入有两个,参数一:需要截图的容器控件,参数二:保存截图的绝对路径路径
<param name="control">控件名</param>
<param name="addrName">保存图片地址(绝对路径)</param>
二、函数输出
函数无反馈值,但会在指定路径下生成bmp格式的截图文件
三、使用示例
1、需要截图的范围是tableLayoutPanel1容器控件中的四个图表,放置到"C:\\Users\\administrator\\Documents\\123__s.bmp"路径下
2、将参数放入,调用函数
//CaptureControl(tableLayoutPanel1, "C:\\Users\\administrator\\Documents\\123__s.bmp"); CaptureControl(tableLayoutPanel1, picPath);
3、查看结果
函数源码如下:
/// <summary> /// 截图指定控件内图像 /// </summary> /// <param name="control">控件名</param> /// <param name="addrName">保存图片地址(绝对路径)</param> public void CaptureControl(Control control, string addrName) { // 获取控件的位置和尺寸 Rectangle bounds = control.Bounds; // 创建一个位图对象 Bitmap bitmap = new Bitmap(bounds.Width, bounds.Height); // 将控件绘制到位图上 control.DrawToBitmap(bitmap, new Rectangle(0, 0, bounds.Width, bounds.Height)); //按指定名称存储到路径下 bitmap.Save(addrName, System.Drawing.Imaging.ImageFormat.Bmp); }