尽快捕获屏幕的一部分

时间:2018-07-15 21:17:41

标签: c# graphics capture

我制作了一个可以捕获屏幕一部分的工具。

enter image description here

该红色正方形内的所有像素均加载到位图中:

private Bitmap Capture()
{
    var bitmap = new Bitmap(measurementToolBounds.Width, measurementToolBounds.Height);
    using (var g = Graphics.FromImage(bitmap))
    {
        g.CopyFromScreen(measurementToolBounds.Location, Point.Empty, measurementToolBounds.Size, CopyPixelOperation.SourceCopy);
        g.Flush();
    }
    return bitmap;
}

不幸的是,CopyFromScreen大约需要30毫秒才能执行。

我也尝试过使用gdi32.dllBitBlt,但据我所知,CopyFromScreen会在后台调用BitBlt

是否有使用C#甚至是您知道的第三者实用工具来执行此操作的更快方法,我可以使用它来将屏幕的一部分作为字节数组来检索?

0 个答案:

没有答案