В настоящее время я пытаюсь сделать снимок указанной части окна моего приложения из указанной начальной координаты (в этом и заключается моя проблема).
Rectangle bounds = new Rectangle((this.Width/2)-400,(this.Height/2)-200, 800,400);
using (Bitmap bitmap = new Bitmap(bounds.Width, bounds.Height, PixelFormat.Format32bppArgb))
{
using (Graphics graphics = Graphics.FromImage(bitmap))
{
IntPtr hdc = graphics.GetHdc();
PrintWindow(this.axS.Handle, hdc, 0);
graphics.ReleaseHdc(hdc);
graphics.Flush();
string file = "example.png";
bitmap.Save(file, ImageFormat.Png);
}
}
Я пытаюсь сделатьдинамически-адаптивный метод, чтобы сделать скриншот центра окна, даже после изменения размера.Я не уверен, как применить x
и y
к скриншоту в качестве отправной точки для скриншота.Размеры всегда будут оставаться 800,400
и всегда будут делать снимок экрана в центре приложения независимо от размера окна.
При каждой попытке разметки растровое изображение делало снимок экрана с 0 (+800), 0 (+400)
, где 0, 0
мне нужноизменить.
Способен ли Bitmap
на это?Если нет, какой другой метод я мог бы использовать?