Обрезка изображений в C#

Обрезка изображения, также известная как маскирование изображения или извлечение объекта, представляет собой метод, используемый в графическом дизайне и обработке изображений. Он используется для выделения определенных объектов или предметов из изображения. В этой статье мы рассмотрим реализацию отсечения изображений на C#. Изучите пошаговые методы извлечения объектов и улучшения ваших проектов.

В этой статье должны быть раскрыты следующие темы:

  1. C# API обрезки изображений — скачать бесплатно
  2. Как реализовать отсечение изображений C#
  3. Извлечь объект из изображения в C#
  4. Бесплатные учебные ресурсы

C# API обрезки изображений — скачать бесплатно

Для реализации обрезки изображений на C# мы будем использовать API Aspose.Drawing for .NET. Это кроссплатформенная библиотека 2D-графики для программного рисования текста, геометрии и изображений. Он позволяет загружать, сохранять и управлять поддерживаемыми форматами файлов.

Пожалуйста, загрузите DLL API или установите его с помощью NuGet.

PM> Install-Package Aspose.Drawing

Обрезка изображений C#

Мы можем реализовать отсечение изображения программно, выполнив следующие шаги:

  1. Во-первых, создайте экземпляр класса Bitmap.
  2. Затем создайте объект класса Graphics с помощью метода FromImage().
  3. Затем определите путь клипа с помощью класса GraphicsPath.
  4. После этого установите путь клипа с помощью метода SetClip().
  5. Наконец, сохраните выходное изображение с помощью метода Save().

В следующем примере кода показано, как реализовать отсечение изображения в C#.

// Создать новое растровое изображение
var bitmap = new Bitmap(1000, 800, System.Drawing.Imaging.PixelFormat.Format32bppPArgb);

// Инициализировать графику
Graphics graphics = Graphics.FromImage(bitmap);
graphics.TextRenderingHint = TextRenderingHint.AntiAliasGridFit;

// Определить клип
Rectangle rectangle = new Rectangle(200, 200, 600, 400);
GraphicsPath clipPath = new GraphicsPath();
clipPath.AddEllipse(rectangle);
graphics.SetClip(clipPath);

// Укажите строку
StringFormat stringFormat = new StringFormat();
stringFormat.Alignment = StringAlignment.Center;
stringFormat.LineAlignment = StringAlignment.Center;
Brush brush = new SolidBrush(Color.Red);
Font arial = new Font("Arial", 20, FontStyle.Regular);
string text = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. " +
    "Maecenas sapien tellus, mattis et condimentum eget, commodo ut ipsum. " +
    "Maecenas elit sapien, tempus sit amet mauris sit amet, hendrerit laoreet nisi. " +
    "Nulla facilisi. Sed commodo, mauris eget porta commodo, nunc tellus volutpat mi, " +
    "eu auctor diam libero vel neque. Vestibulum nec mattis dui, nec molestie nisl. " +
    "Etiam in magna felis. Praesent non nulla tortor. Integer nec convallis purus. " +
    "Fusce vitae mollis mauris. Cras efficitur dui at mi viverra scelerisque. " +
    "Morbi quis magna elit. Nulla facilisis id ante sit amet fringilla. " +
    "Sed iaculis consectetur lectus a interdum. Etiam ut sollicitudin lectus, et congue lectus.";

// Нарисовать строку
graphics.DrawString(text, arial, brush, rectangle, stringFormat);

// Сохранять
bitmap.Сохранять("C:\\Files\\Clipping.png");
Обрезка изображений C#

Обрезка изображений C#

Извлечь объект из изображения в C#

Мы можем извлечь определенную часть изображения, используя отсечение изображения, выполнив шаги, упомянутые ранее. Однако нам просто нужно загрузить существующее изображение и нарисовать его с помощью метода DrawImage().

В следующем примере кода показано, как использовать извлечение объекта из изображения в C#.

// Создать новое растровое изображение
var bitmap = new Bitmap(225, 225, System.Drawing.Imaging.PixelFormat.Format32bppPArgb);

// Инициализировать графику
Graphics graphics = Graphics.FromImage(bitmap);
graphics.TextRenderingHint = TextRenderingHint.AntiAliasGridFit;

// Определить клип
Rectangle rectangle = new Rectangle(0, 0, 225, 225);
GraphicsPath clipPath = new GraphicsPath();
clipPath.AddEllipse(rectangle);
graphics.SetClip(clipPath);

// Загрузите изображение
Bitmap image = new Bitmap(@"C:\Files\aspose-logo.png");

// Нарисовать изображение в указанном месте
graphics.DrawImage(image,0,0);

bitmap.Save("C:\\Files\\extract-object.png");
Извлечь объект из изображения в C#

Извлечь объект из изображения в C#

Получить бесплатную временную лицензию

Вы можете получить бесплатную временную лицензию, чтобы попробовать Aspose.Drawing for .NET без ограничений пробной версии.

Aspose.Drawing — бесплатные обучающие ресурсы

Помимо обрезки изображений в C#, вы можете узнать больше о различных функциях библиотеки, используя приведенные ниже ресурсы:

Заключение

В этой статье мы узнали, как реализовать отсечение изображения на C#. Следуя пошаговым инструкциям и примерам кода, вы сможете легко и точно извлекать объекты из изображений. В случае возникновения каких-либо неясностей, пожалуйста, свяжитесь с нами на нашем бесплатном форуме поддержки.

Смотрите также