如果我在位图上有4个点(左上角,右上角,左下角,右下角)如何剪切位图而不使用Rectangle方法来切割那些点的矩形?并将其另存为.png?
答案 0 :(得分:1)
假设你有4分:p1, p2, p3, p4
。您可以使用Clip
对象的Graphics
属性绘制图像,使得只有4个点所构成的多边形区域中的图像部分。以下是在表单上绘制图像的测试:
private void Form1_Paint(object sender, PaintEventArgs e) {
GraphicsPath gp = new GraphicsPath();
gp.AddPolygon(new []{Point.Empty, new Point(100,10), new Point(200,300), new Point(30,200) });//add p1,p2,p3,p4 to the Polygon
e.Graphics.Clip = new Region(gp);
e.Graphics.DrawImage(yourImage, Point.Empty);
}
答案 1 :(得分:0)
您可以裁剪图像(保存部分图像),如下所示:
int newWidth = x2-x1;
int newHeight = y2-y1;
Bitmap smallBitmap = new Bitmap(newWidth, newHeight);
bigImage.DrawImage(0, 0, smallBitmap, x1, y1, newWidth, newHeight);
smallBitmap.Save(....);