Как обрезать изображение pictureBoxа в C#?

Рейтинг: 0Ответов: 1Опубликовано: 14.07.2023

Код должен отрисовывать изображения с pictureBoxа на bitmap, но мне надо чтобы перед отрисовкой изображение ещё обрезалось снизу пикселей на 10. Помогите пожалуйста.

Bitmap bitmap = new Bitmap(totalWidth, totalHeight);

Graphics graphics = Graphics.FromImage(bitmap);

graphics.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.NearestNeighbor;
graphics.PixelOffsetMode = System.Drawing.Drawing2D.PixelOffsetMode.HighQuality;
graphics.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.HighQuality;

foreach (PictureBox pictureBox in pictureBoxes)
{
     graphics.DrawImage(pictureBox.Image, x, 35, pictureBox.Width, pictureBox.Height);
}

Ответы

▲ 1

Ответ на ваш вопрос есть тут: https://stackoverflow.com/questions/734930/how-do-i-crop-an-image-using-c

// Метод для обрезания изображения
public static Image CropImage(Image img, Rectangle cropArea)
{
   Bitmap bmpImage = new Bitmap(img);
   return bmpImage.Clone(cropArea, bmpImage.PixelFormat);
}

internal class Program
{
   static void Main(string[] args)
   {
      Rectangle cropRect = new Rectangle(...); // Подставите свои данные 
      // Ваш код
   }
}