裁剪图片,从X,Y获得矩形?

时间:2012-11-04 08:27:06

标签: c# coordinates points

我正在尝试从整数x,y坐标中裁剪C#中的图片。 我只是弄不清楚如何得到它?

public void doCroppedImage(int pointX, int pointY)
{
    Rectangle cropRect = //???
}

1 个答案:

答案 0 :(得分:13)

您可以使用此代码。它返回裁剪的图像。

public static Bitmap CropImage(Image source, int x,int y,int width,int height)
{
    Rectangle crop = new Rectangle(x, y, width, height);

    var bmp = new Bitmap(crop.Width, crop.Height);
    using (var gr = Graphics.FromImage(bmp))
    {
        gr.DrawImage(source, new Rectangle(0, 0, bmp.Width, bmp.Height), crop, GraphicsUnit.Pixel);
    }
    return bmp;
} 

但有一条评论,要裁剪图像,您不仅要知道裁剪点的x和y坐标,还要知道裁剪图像的宽度和高度。