在 C# 中裁剪图像

如今,图像编辑非常普遍,在各种情况下,我们需要操纵图像以获得所需的结果。作为程序员,您可能需要在您正在构建的应用程序中实现图像编辑功能。最近,我们介绍了如何以编程方式 resize、rotate 和 flip 图像。今天,我们将向您展示如何在 .NET 应用程序中使用 C# 裁剪图像。我们将讨论如何使用移位值或矩形进行图像裁剪。

用于裁剪图像的 C# API - 免费下载

对于 C# 中的图像裁剪,我们将使用 Aspose.Imaging for .NET。它是一个功能丰富的 API,可以无缝处理流行格式的图像。您可以 下载 API 或使用 NuGet 将其安装到您的 .NET 应用程序中。

PM> Install-Package Aspose.Imaging

在 C# 中裁剪图像

Aspose.Imaging for .NET 提供了两种裁剪图像的方法。在第一种方法中,我们需要提供左移、右移、上移和下移值。而在第二种方法中,我们定义一个矩形来裁剪图像的某个区域。

在以下部分中,我们将演示如何使用上述两种方法在 C# 中裁剪图像。

在 C# 中使用 Shift 值裁剪图像

以下是在 C# 中使用移位值裁剪图像的步骤。

以下代码示例展示了如何在 C# 中裁剪图像。

// 加载要裁剪的图像。
using (RasterImage rasterImage = (RasterImage)Image.Load("image.png"))
{
    // 在裁剪之前,应该缓存图像以获得更好的性能。
    if (!rasterImage.IsCached)
    {
        rasterImage.CacheData();
    }

    // 定义所有四个边的移位值。
    int leftShift = 10;
    int rightShift = 10;
    int topShift = 50;
    int bottomShift = 50;

    // 根据移位值,对图像应用裁剪。裁剪方法会将图像边界向图像中心移动。
    rasterImage.Crop(leftShift, rightShift, topShift, bottomShift);

    // 保存裁剪的图像。
    rasterImage.Save("cropped.png");
}

以下是我们用于裁剪的输入图像。

在 C# 中裁剪图像

下面是裁剪后的图像。

C#中的图像裁剪

使用矩形进行 C# 图像裁剪

您还可以定义一个矩形来裁剪图像的所需区域。以下步骤演示了在 C# 中使用矩形进行图像裁剪。

以下代码示例展示了如何在 C# 中使用矩形执行图像裁剪。

// 加载图像。
using (RasterImage rasterImage = (RasterImage)Image.Load("image.png"))
{
    // 在裁剪之前,应该缓存图像以获得更好的性能。
    if (!rasterImage.IsCached)
    {
        rasterImage.CacheData();
    }

    // 创建具有所需大小的 Rectangle 类的实例并裁剪图像。
    Rectangle rectangle = new Rectangle(20, 20, 20, 20);             
    rasterImage.Crop(rectangle);

    // 保存裁剪的图像。
    rasterImage.Save("cropped.png");
}

C# 的图像裁剪 API - 获取免费许可证

您可以 获得免费的临时许可证 并在没有评估限制的情况下裁剪图像。

构建您的图像裁剪应用程序

在本文中,您学习了如何在 C# 中裁剪图像。我们已经展示了几种使用移位值或矩形裁剪图像的方法。现在,您可以轻松构建图像裁剪应用程序或增强现有应用程序的图像编辑功能。要探索有关 C# 图像编辑 API 的更多信息,您可以访问 文档。此外,您可以通过我们的 论坛 与我们分享您的疑问。

也可以看看