裁剪图像 C#

在 C# 中以编程方式处理图像允许开发人员执行各种操作,例如调整大小、旋转和裁剪。在这些任务中,当您想要从图像中提取特定区域或去除不需要的边距时,裁剪特别有用。在本指南中,我们将重点介绍如何使用 Conholdate.Total for .NET 在 C# 中裁剪图像。

我们将带您了解两种不同的裁剪技术,第一种是使用移位值从所有边缘修剪图像,第二种是通过定义一个自定义矩形来隔离图像的特定部分。每个部分都包含了详细记录的代码片段以及适用于现实世界应用的实用见解。

为什么在 C# 中以编程方式裁剪图像?

有几种情况,程序matically 裁剪图像是有益的:

  • 专注于内容:裁剪使您能够突出图像的特定部分,非常适合用于个人资料照片、缩略图或文档扫描。

  • 自动化图像处理:在涉及批量图像编辑或用户上传内容的应用中,自动化裁剪过程简化了工作流程,消除了手动工作。

  • 合规与隐私:裁剪可以在共享图像之前删除敏感或无关的数据。

裁剪不仅仅是美学调整,它是数据处理、用户体验设计和系统性能的关键部分。

裁剪 JPG PNG BMP 图像 - .NET API 配置

您可以通过下面的 NuGet 安装命令轻松设置 Conholdate.Total for .NET:

Install-Package Conholdate.Total

在 C# 中通过移动边缘裁剪图像

第一种方法演示了如何通过向内移动边框来裁剪图像。当您想要从图像的顶部、底部、左侧和右侧统一或不对称地修剪边距时,这尤其有用。

// Load the image to be cropped.
using (RasterImage rasterImage = (RasterImage)Image.Load("image.png"))
{
    // Before cropping, the image should be cached for better performance.
    if (!rasterImage.IsCached)
    {
        rasterImage.CacheData();
    }

    // Define shift values for all four sides.
    int leftShift = 10;
    int rightShift = 10;
    int topShift = 50;
    int bottomShift = 50;

    // Based on the shift values, apply the cropping on image. Crop method will shift the image bounds toward the center of image.
    rasterImage.Crop(leftShift, rightShift, topShift, bottomShift);

    // Save cropped image.
    rasterImage.Save("cropped.png");
}

在这个例子中,我们加载一个 PNG 图像,并指定要从每一侧去除的像素数量。Crop 方法方便地向内调整图像的尺寸,消除不必要的边框,同时保持图像的完整性。通过使用此方法,您可以实现一致的基于边缘的裁剪,适合扫描文档、屏幕截图和图像边框。

使用定义矩形裁剪图像在 C# 中

第二种方法通过允许您使用矩形边界定义要保留的确切区域,从而提供更高的精度。当您知道图像中所需区域的坐标和大小时,这种方法是理想的。

// Load the image.
using (RasterImage rasterImage = (RasterImage)Image.Load("image.png"))
{
    // Before cropping, the image should be cached for better performance.
    if (!rasterImage.IsCached)
    {
        rasterImage.CacheData();
    }

    // Create an instance of Rectangle class with desired size and crop the image.
    Rectangle rectangle = new Rectangle(20, 20, 20, 20);
    rasterImage.Crop(rectangle);

    // Save cropped image.
    rasterImage.Save("cropped.png");
}

这个方法在您需要隔离图像的特定部分时特别有用,例如电子商务照片中的产品区域、扫描文档中的文本块或图表中的感兴趣区域。定义和应用这样的矩形既直观又高效。

免费评估许可证

您可以获得一个 免费临时许可证 来评估 API 提供的许多其他功能的全部能力。

结论

在 C# 中裁剪图像并不复杂。无论您需要修剪边框还是提取特定区域,都可以快速准确地完成工作。支持基于移动和基于矩形的裁剪,您可以灵活地处理各种实际用例,从文档成像到内容个性化。

通过将这些功能集成到您的 .NET 应用程序中,您可以自动化图像编辑任务,改善用户体验,并在大数据集中保持一致的格式。

另见