C # библиотека, чтобы делать скриншоты? - PullRequest
5 голосов
/ 16 сентября 2010

Есть ли хорошая библиотека, которую я могу использовать в c #, чтобы сделать снимок экрана / снимок?

Где можно перетащить область моего экрана, чтобы сделать ее снимок экрана / снимок?

1 Ответ

5 голосов
/ 16 сентября 2010

Мне не известны какие-либо библиотеки, позволяющие визуально выбирать область на экране, но можно сделать снимок экрана всего экрана с помощью метода Graphics.CopyFromScreen следующим образом:

var bounds = Screen.PrimaryScreen.Bounds;
using (var bmp = new Bitmap(bounds.Width,
                            bounds.Height,
                            PixelFormat.Format32bppArgb))
using (var gfx = Graphics.FromImage(bmp))
{
    gfx.CopyFromScreen(bounds.X,
                       bounds.Y,
                       0,
                       0,
                       bounds.Size,
                       CopyPixelOperation.SourceCopy);
    bmp.Save("shot.png");
}
...