Я знаю, как использовать метод DrawImage () объекта Graphics для копирования из прямоугольной исходной области в прямоугольную область назначения и как копировать в область паралеллограммы, определенную массивом Point [] из трех элементов.
Можно ли в .NET копировать из прямоугольной исходной области в 4-стороннюю непрямоугольную область назначения (которая определяется четырьмя произвольными точками)?
Обновление . Вот пример кода, который копирует изображение в область параллелограмма:
using (Graphic g = this.CreateGraphics())
{
List<Point> pts = new List<Point>();
pts.Add(new Point(0, 0));
pts.Add(new Point(100, 0));
pts.Add(new Point(10, 100));
g.DrawImage(pbSource.Image, pts.ToArray());
}
Если я добавлю четвертую точку, я получу исключение «Не реализовано».
Обновление 2 . можно сделать это полностью в .NET:
альтернативный текст http://www.freeimagehosting.net/uploads/a770d1e97f.jpg
но вы должны сделать это сами, попиксельно. Графика предоставлена Джонбертом .