1. 多屏幕截图的基础实现
在C#中实现屏幕截图功能其实并不复杂,核心就是利用GDI+的绘图能力。我们先从最基本的单屏幕截图开始讲起,这样更容易理解整个流程。我刚开始接触这个功能时也踩过不少坑,后来发现只要掌握几个关键类就能轻松搞定。
最常用的就是Screen类和Bitmap类。Screen.AllScreens可以获取当前系统连接的所有显示器信息,而Bitmap则用来存储截图数据。下面这段代码是我在实际项目中验证过的可靠实现:
private void CaptureScreenArea()
{
// 获取主显示器
Screen primaryScreen = Screen.PrimaryScreen;
// 定义截图区域(左上角坐标+宽高)
Rectangle captureArea = new Rectangle(100, 50, 800, 600);
// 创建位图对象
using (Bitmap screenshot = new Bitmap(captureArea.Width, captureArea.Height))
{
// 创建绘图表面
using (Graphics graphics = Graphics.FromImage(screenshot))
{
// 执行屏幕拷贝
graphics.CopyFromScreen(
captureArea.X,
captureArea.Y,
0,
0,
captureArea.Size,
CopyPixelOperation.SourceCopy);
}
// 保存截

3373

被折叠的 条评论
为什么被折叠?



