Используйте Graphics.DrawImage (), чтобы скопировать выделенную часть исходного изображения. Вам понадобится перегрузка , которая принимает прямоугольник источника и назначения. Создайте экземпляр Graphics из Graphics.FromImage () на новом растровом изображении того же размера, что и прямоугольник.
public static Bitmap CropImage(Image source, Rectangle crop) {
var bmp = new Bitmap(crop.Width, crop.Height);
using (var gr = Graphics.FromImage(bmp)) {
gr.DrawImage(source, new Rectangle(0, 0, bmp.Width, bmp.Height), crop, GraphicsUnit.Pixel);
}
return bmp;
}