Нужно сделать скриншот по координатам и сохранить картинку в высоким расширением

Bitmap printscreen = new Bitmap(Screen.PrimaryScreen.Bounds.Width, Screen.PrimaryScreen.Bounds.Height);
Graphics graphics = Graphics.FromImage(printscreen as Image);
graphics.CopyFromScreen(new Point(457, 215), new Point(), printscreen.Size);
printscreen.SetResolution(2575,3528);
printscreen.Save(@"C:\printscreen.jpg", ImageFormat.Jpeg);

Не работает :frowning: Не понимаю что тут не так…
В итоге должна остаться картинка высокого разрешения, сделанная по координатам.

see here: c# - .NET - Bitmap.Save ignores Bitmap.SetResolution on Windows 7 - Stack Overflow

похоже проблема именно в printscreen.SetResolution(2575,3528); попробуй без него.
в нашем проекте работает код (см. ниже) он снимает скриншот и возвращает битмап, вполне нормального качества, без ручной установки сетрезолшин
public static Bitmap CaptureScreenRect(Rect rectToCopy)
{
Bitmap image = new Bitmap(Convert.ToInt32(rectToCopy.Width), Convert.ToInt32(rectToCopy.Height),
PixelFormat.Format24bppRgb);
{
using (Graphics gfx=Graphics.FromImage(image))
{
gfx.CopyFromScreen(Convert.ToInt32(rectToCopy.X), Convert.ToInt32(rectToCopy.Y), 0, 0, new System.Drawing.Size(Convert.ToInt32(rectToCopy.Width), Convert.ToInt32(rectToCopy.Height)));

            }
            
        }
        return image;
   }

еще одно: можно сохранять битмап в PNG формат, он качественее чем jpg и легче чем bmp :wink:

Большое спасибо)