设 rect 为当前屏幕上显示的表单的左、上、宽、高。现在,我想对桌面“后面”显示的内容进行“屏幕截图”。
动机:我相信你们都知道有一个电视台在屏幕的某个角落显示时钟。大多数这些时钟确实有一个失败之处:它们不适应背景,比如时钟显示在右上角,并且字体颜色被设置为纯白色。假设天气预报显示鲍勃·罗斯蓬松的小白云。现在是几奌?呃……
我想做的是截取我的时钟将显示的同一区域的屏幕截图,并计算该区域(矩形)的或多或少的对比色。
有什么提示吗?只是关于如何获取背景矩形!谢谢!
using System.Drawing.Imaging;
using System.Drawing;
using System;
try
{
Bitmap captureBitmap = new Bitmap(1024, 768, PixelFormat.Format32bppArgb);
Rectangle captureRectangle = Screen.AllScreens[0].Bounds;
Graphics captureGraphics = Graphics.FromImage(captureBitmap);
captureGraphics.CopyFromScreen(captureRectangle.Left,captureRectangle.Top,0,0,captureRectangle.Size);
captureBitmap.Save(@"E:\Capture.jpg",ImageFormat.Jpeg);
MessageBox.Show("Screen Captured");
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}