C# 如何在C语言中剪切图像的一部分#

C# 如何在C语言中剪切图像的一部分#,c#,.net,graphics,C#,.net,Graphics,我不知道如何从其他大图像中剪切矩形图像。 假设有300 x 600 image.png 我只想剪切一个X:10Y20,200,高度100的矩形,并将其保存到另一个文件中 我怎么能用C#做呢 谢谢 查看MSDN上的 下面的示例将为您指出正确的方向(请注意矩形对象): 另一种复制图像的方法是克隆具有特定起点和大小的图像 int x= 10, y=20, width=200, height=100; Bitmap source = new Bitmap(@"C:\tulips.jpg"); Bitma

我不知道如何从其他大图像中剪切矩形图像。

假设有300 x 600 image.png

我只想剪切一个X:10Y20,200,高度100的矩形,并将其保存到另一个文件中

我怎么能用C#做呢

谢谢

查看MSDN上的

下面的示例将为您指出正确的方向(请注意
矩形
对象):


另一种复制图像的方法是克隆具有特定起点和大小的图像

int x= 10, y=20, width=200, height=100;
Bitmap source = new Bitmap(@"C:\tulips.jpg");
Bitmap CroppedImage = source.Clone(new System.Drawing.Rectangle(x, y, width, height), source.PixelFormat);

@Brian-将此作为答案发布(可能带有一些引用/引用的代码),这样我们就可以投票了。你的图像有透明部分吗?如果您需要透明性,Brian的链接将不会有帮助,因为位图不支持透明性。这是一个更好的答案,因为它不需要加载像
Graphics
这样的外部程序集即可实现此目标!克隆完成后,如果要释放原始位图的任何句柄,可以调用源(source.dispose();)的dispose()函数。例如,如果要删除原始图像并仅保留裁剪版本,则需要在删除原始图像之前调用dispose()函数。以防有人想做这个操作。图形解决方案比克隆要快得多,我还是不想克隆位图,因为它不是深度克隆。我不确定您的dispose在这种情况下是否可以工作,两个位图将使用相同的像素数据如何处理非矩形形状?我需要复制一个梯形
int x= 10, y=20, width=200, height=100;
Bitmap source = new Bitmap(@"C:\tulips.jpg");
Bitmap CroppedImage = source.Clone(new System.Drawing.Rectangle(x, y, width, height), source.PixelFormat);