kryos
@kryos
student of Gubkin University

Как сохранить часть картинки в файл в WPF?

У меня стоит задача: написать простенькую программу, в которую бы можно было загрузить картинку, выбрать отдельную часть, а потом сохранить в отдельный файл.
Картинку подгружаю в Image. Какие именно части нужно сохранить, я выбираю с помощью полигона (ЛКМ создаю новые точки)
Полигон состоит из 4 точек, по идее выделенная область - наклоненный прямоугольник (я могу нарисовать только нормальный прямоугольник). Это наклоненный прямоугольник мне надо сделать вертикальным и сохранить получившуюся часть картинки в файл
Как мне лучше это сделать?
  • Вопрос задан
  • 952 просмотра
Решения вопроса 1
alex1t
@alex1t
.net developer
Есть 2 варианта.
Для начала предположим, что у вас есть исходное изображение и выделенный прямоугольник:

Image img = ...;
Rectangle selection = ...;


1. Можно попробовать через Bitmap Bitmap.Clone
Bitmap bmp = new Bitmap(img);
Bitmap selectedBmp = bmp.Clone(selection, bmp.PixelFormat);


2. Можно попробовать через Graphics Graphics.DrawImage:
Bitmap selectedBmp = new Bitmap(selection.Width, selection.Height);
using(var g = Graphics.FromImage(selectedBmp))
{
    g.DrawImage(img,0,0,selection,GraphicsUnit.Pixel);
}


Ну и потом:
selectedBmp.Save(...);
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы